Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

JavaWorld Daily Brew

High Performance Java

Ruminations on high-octane Java.


Compact Equals

Reposted from: http://www.obix-labs.com/blogs/highOctaneJava/

Read more ...

 

Obix Labs XConfig now available.

Obix Labs are pleased to announce the official release of XConfig: a Spring compatiable Java/XML configuration library. It supports auto-reload, annotations, Spring property placeholders etc. Unlike Spring Config (JConfig) it does not require users to write new classes or to use property files.

Read more ...

 

Epsilon 1.0.2 now available

Obix Labs are pleased to announce release 1.0.2 of the Epsilon performance/latency monitoring library. Epsilon allows you to define performance criterion for your applications and to monitor these during the application’s lifetime. Its API is as simple as that of a common logger. It even provides annotations, thereby removing the need to use its API directly.
Its benefits can be summarised as follows:

Read more ...

  • Spring Annotations and AOP support
  • Statistics collection/persistence
  • Lightweight and highly performant
  •  

Generating Passwords in Java using the obix commons library

Learn how to generate strong and secure passwords in Java using functionality available in the latest release of the obix commons library.

To access the sample application and related documentation, please see the URL: http://www.obix-labs.com/wiki/bin/view/Commons/PasswordGenerator. The samples and documentation demonstrate the generation of simple passwords to strong passwords encapsulating a variety of rules e.g. mixture of lower and upper case, numbers and punctuation symbols.

 

Handling command line and console input in Java

Learn how to handle command line and console input in Java using functionality available in the latest
obix commons release. The functionality removes the untidy code associated with prompting for input, validating input and handling input errors. It provides concise code and classes which can be used to read and validate several different types of input e.g. multi-choice input, numeric input, file paths and email validation.

Read more ...

 

Performance Monitoring with Spring AOP

Functional requirements for mission critical applications often include software service level agreements (SLAs), which specify the maximum allowable latency for specific operations. Such requirements necessitate the monitoring of application performance, either at system testing stage or post deployment. This article will demonstrate how real-time performance tracing/monitoring can be achieved for spring applications using the functionality provided in Spring AOP and the Apache Log4j toolkit.

Read more ...

 

Epsilon 1.0.0 Alpha Preview Now Available

Epsilon is a lightweight tool for monitoring and tracking the performance of Java applications in real time. It supports integration and configuration via Spring, including Spring AOP. Download from: http://www.obix-labs.com

Read more ...

 

Deadlock anti-patterns #3: Incremental Locking

In the previous instalment of this three part series, I examined the 'Worker Aggregation' anti-pattern. I also listed a number of ways to modify it so as to reduce the probability of its implementations leading to deadlock. Code samples were provided to demonstrate the pattern in both its raw and modified form, with the latter serving as practical demonstration of the deadlock avoidance modifications discussed.

Read more ...

 

Deadlock anti-patterns #2: Worker Aggregation

In the first installment of this three part series, I described the problem of deadlock; focusing on the logical conditions that are necessary for a deadlock to occur. I also introduced the deadlock-prone No Arbitration anti-pattern which is evident in applications where interdependent processes are allowed to contend for resources without effective arbitration to determine priority of access at critical junctures.

Read more ...

 

Deadlock anti-patterns #1: No arbitration

Starvation occurs when one or more threads of execution are prevented from proceeding beyond a given point due to a predicate that will never be satisfied. Deadlock is a special form of starvation where threads of execution are prevented from making progress due to predicate conditions that are directly dependent on them. To illustrate, consider threads A and B, with shared resources R1 and R2. If thread A holds resource R1, and thread B holds resource R2; a deadlock will occur if thread A needs resource R2 to proceed and thread B is waiting on thread A to release resource R1.

Read more ...

 

Annotations, to do or not to do?

It goes without saying that annotations have been something of a massive boon to enterprise Java developers. In fact, we can safely say that it is one of the key weapons in a developer's arsenal when battling the complexity of various deployment descriptor and mapping specifications.

Read more ...

 
Syndicate content