Daily Power Ups

Recent Posts Widget

Friday, October 4, 2013

StubHub looks to speed things up

In the words of the infamous Red Rocker: 
          "I Can't Drive 55!!!!" 


As StubHub continues to innovate, build on and expand our entertainment hub we are also striving to make it faster so that your experience will be more enjoyable.    

Tuesday, September 24, 2013

Putting your website on a diet

BEFORE
AFTER 
Most websites are just like me after the holiday's have past and I realize that I ate too much turkey, stuffing and pie; they are prone to events that cause them to incur page bloat.  However, just like me at the end of the holidays, we can put our website on a quick diet and then recommit ourselves to that regularly maintained healthy lifestyle.

Tuesday, August 27, 2013

ASM for bytecode analysis

In the not too distant past I was tasked with a project to increase up-time and performance by ensuring that a JVM did not have to be restarted when data was updated in the back-end DB.  As you can imagine this entails several different things, the top most of which is ensuring that all cache's within the Application running on the JVM are refreshed; this includes both managed and unmanaged caches.

Friday, August 9, 2013

Permgen crashes due to class loader leaks

Sometime back a colleague was running a performance test and the site was crashing due to an OOM situation.  However, they, not being performance focused, were having a tough time isolating the srouce of the crash.  So I volunteered to help and found that when the site was running it was overloading the permgen space causing the crash.  The permgen is where loaded classes are kept and sure enough if you watched the class graph in JConsole or VisualVM you would confirm that as the site ran the classes loaded were growing too fast for the permgen space to keep up with (in terms of collection) and that there was little to no unloading.  After investigating we found 2 different sites with similar issues in different area's and had to use 2 different methods to track down the root cause.  Here we've documented the processes uses.

Monday, July 22, 2013

Performance Issues I've observed over the years

Over the years I've seen several performance issues that can be broken down into a few fundamentals: tune the heap, cache whenever/wherever, avoid excessive chatter (logging, network, etc...), avoid single threaded bottlenecks and be mindful of memory consumption.  Below are several examples of actual issues.