Unlock productivity is one of the bigger concerns for any person taking management role. However, people rarely agree on the best approaches to improve performance. Over the years, I have observed different managers using the opposite practices to churn out best performance of the team they are managing. Unfortunately, some works and other don't. To be more accurate, what does not increase...
on Jun 18, 2014
This is a continuation of the previous post titled (Part 1 of 3): Synopsis of articles & videos on Performance tuning, JVM, GC in Java, Mechanical Sympathy, et al.
Without any further ado, lets get started with our next set of blogs and videos, chop...chop...! This time its Martin Thompson's blog posts and talks. Martin's first post on Java Garbage...
on Feb 17, 2014
One of my favorite sessions at Jfokus 2013 was presented by Typesafe co-founder and Java Champion Jonas Bonér. I always enjoy discussions about how technology evolves over the decades, how we break away from concepts, then sometimes weave our way back via the latest and greatest thing, which can sometimes appear strikingly similar to something that was very much in vogue a decade or so earlier....
on Mar 18, 2013
Sometimes, life drops a house on your code. Sometimes, it's flying monkeys. Most of the time though, the damn stuff just stops working and it's nothing so obvious as being crushed by a Kansas farmhouse or being carried away by winged primates.
For this last common case, there are a good number of great tools to help you out. JMeter may help you to reproduce the conditions under load, while...
on Feb 1, 2013
While parts of the cloud IT that are still being hyped are changing rapidly, the whole segment is not past the hype yet. The cloud report  that Gartner published 9 months ago still holds true today.
Reports of disillusioned customers of such solutions  are a clear sign that the hype might have reached its peak for most parts of cloud offerings, though. And while many articles discuss the...
on Mar 30, 2014
HTML Online Editor Sample
I have been contemplating for a number of months about reviewing a cache of articles and videos on topics like Performance tuning, JVM, GC in Java, Mechanical Sympathy, etc... and finally took the time to do it - may be this was the point in my intellectual progress when was I required to do such a thing!
Thanks to Attila-Mihaly for giving me the...
on Jan 17, 2014
Tuning Java code presents many challenges and addresses several goals.
One of these goals is to make the application "run faster".
Recently, our end-users were getting multiple-second response times from our web application's home page.
This was unacceptable.
We were asked to see what we can do to make the web application "run faster".
We began by looking at the usual suspects... database access...
on Apr 14, 2013
Nowadays there are too many NOSQL database, with different architecture and data structure. However with much variety they share one thing in common: Only search information from the keys. A good option is uses other service to help the NOSQL databases. In this post will how the Lucene does work together a NOSQL database, join two world in one application.
on Oct 13, 2012
Every once in a while I run into someone that has a JVM that is running back to back collections and yet the heap is still almost full after each attempt! When they discover that their problem is related to the JVM not having enough memory they often ask the question, why didn't the JVM throw an OutOfMemoryError? After all my application is not making any forward progress and the reason is Java...
on Jan 8, 2014
Could java.util.concurrent.lock.Lock use a static list of all threads that have locks and ThreadLocal locks lists to know about all in use locks and then check for incorrect order when lock() is called.
Check the ThreadLocal list and if there are no other locks then proceed.
Else if there are other locks then look through other threads to determine if any have any of the same...
on Jul 15, 2013
In the just-completed Java.net poll, most developers identified performance and scalability as being strong determinants of the success of the applications they develop. A total of 242 votes were cast in the poll. The exact question and results were:
How critical is performance/scalability to the success of the apps you develop?
45% (110 votes) - Absolutely critical - we spend lots of time...
on May 28, 2013
Robert Engels works for OptionsCity, which develops financial service platforms using Java. Their products include Freeway, a multi-asset algorithmic trading platform that won the 2012 Chicago Innovation Awards. Robert is the Chief Architect for Freeway development. If you're familiar with modern automated trading, you'll also be quite aware of the necessity to achieve maximal performance....
on May 3, 2013
In this post I introduce Samplr: an open source, intelligent sampling profiler that can be embedded in any Java application for automatic identification of performance bottlenecks
Tools of the Trade
If you read the Developer Power story in the July/August issue of Oracle Java Magazine, you already know that I love VisualVM. It is the best tool I know for inspecting the inner workings of a...
on Aug 6, 2012
Just recently I was engaged to assist with an application that wasn’t behaving. The application, running in a 1.7.0_45 JVM, relied heavily on a 3rd party SAAS framework. That vendor provided my client with a list of 26 different JVM flags that should be set. When faced with this long list of flags I couldn’t resist asking why all the flags and why these flags. After all there are more than 700...
on Dec 11, 2013
I was very pleased to see the JFrog team take me up on my suggestion early this year that "Maybe the JFrog team will consider giving a presentation on how they put all this together at JavaOne this September". Unfortunately for me, the session (Building a Massively Scalable Cloud Service from the Ground Up) was already filled to capacity as I walked up to the door, so I was unable to attend....
on Dec 8, 2013
What happens if you configure a Hadoop-centric scalable big data infrastructure running on the Amazon EC2 cloud, that's programmed to perform some very basic processing on delimited ASCII data records (about 30 characters in each record), and you feed it a single data record? How quickly do you think that massively powerful system would process that teensy, trivial input data set? Milliseconds?...
on Sep 26, 2013
Have you wanted to do something with asynchronous I/O? I did. After doing some work with Node.js, I wanted to find a way to get some of the goodness of its programming model for Java.
The Acteur project is the result - a framework for building scalable, asynchronous web applications using Netty + Guice - was the result. The programming model is a little unusual - you treat constructors as...
on Apr 7, 2013
More than a few days ago a friend pinged me complaining that recent Eclipse release was quite sluggish. Since she had taken my performance tuning seminar she knew exactly how to get and read a GC log but as we all do, she was looking for a second opinion. After looking at the log for a minute it because quite apparent that the default configuration left the IDE starved for memory. After a bit...
on Oct 21, 2012
by Florian Müller, Jay Brown, and Jeff Potts, authors of CMIS and Apache Chemistry in Action
Save 40% on CMIS and Apache Chemistry in Action. Use promo code 12netja when you check out at manning.com
Enterprise Content Management (ECM) repositories often have a lot of types defined, sometimes hundreds in extreme cases. This means that there needs to be a way to organize and retrieve them in a...
on Sep 19, 2012
While I don't normally blog about the exiting world of JVM command line options, this new 7.0 option, which allows you to rotate to a new GC log file, was just so exciting... err... not so widely published that I decided to share. Of course these options only apply when you've used the -Xloggc: option. The settings are;
UseGCLogFileRotation, default value: false
NumberOfGCLogsFiles, default value...
on Aug 20, 2012