Java Performance Tuning

Java(TM) - see bottom of page

|home |services |training |newsletter |tuning tips |tool reports |articles |resources |about us |site map |contact us |
Tools: | GC log analysers| Multi-tenancy tools| Books| SizeOf| Thread analysers|

Our valued sponsors who help make this site possible
New Relic: Try free w/ production profiling and get a free shirt! 

Site24x7: Java Method-Level Tracing into Transactions @ $12/Month/JVM. Sign Up! 

News March 2015

jKool for DevOps
Light up your Apps & get a cool t-shirt

JProfiler
Get rid of your performance problems and memory leaks!


Java Performance Training Courses
COURSES AVAILABLE NOW. We can provide training courses to handle all your Java performance needs

Java Performance Tuning, 2nd ed
The classic and most comprehensive book on tuning Java

Java Performance Tuning Newsletter
Your source of Java performance news. Subscribe now!
Enter email:


New Relic
New Relic: Try free w/ production profiling and get a free shirt!

Site24x7
Site24x7: Java Method-Level Tracing into Transactions @ $12/Month/JVM. Sign Up!


jKool for DevOps
Light up your Apps & get a cool t-shirt

JProfiler
Get rid of your performance problems and memory leaks!


Back to newsletter 172 contents

For those of you interested in knowing what I do when I'm not producing these newsletters, I've described the Java team and technology at the fast growing startup I'm working at - I won't go into any more detail here, except to say I'm having a lot of fun.

A note from this newsletter's sponsor

New Relic - Try New Relic today and get your free Data Nerd shirt!
Free SaaS APM tool to monitor, troubleshoot, and tune apps
running on Websphere, Weblogic, Tomcat, Jetty, JBoss, Solr, Resin

In the linked to presentations, Emad Benjamin gives some lovely tips about sizing your microservices - from the "too small" angle, which is pretty timely, as all the current advice is about moving to smaller services from monolithic ones. He points out firstly, that for a given amount of heap, the more JVMs you split that heap over, the less overall efficiency you get - because two lots of GCs in two different JVMs is not as efficient as one lot of GCs in one JVM the same heap size as those two JVMs. Additionally, with multiple JVMs on the same set of cores, if GC execution happens to coincide across JVMs then you get contention on the CPU (GC is CPU intensive).

Finally, a more detailed point by Emad: if the majority of your requests need both microservice A and microservice B, and these two microservices both each need to scale to the same number of JVMs, there is no point at all in having those microservices running in separate JVMs - you may as well coalesce those microservices into the same JVM and gain the benefit of single JVM efficiency.

And one more presentation I've linked to this month, details from Netflix by Jeremy Edberg and Philip Fisher-Ogden, is an absolute must see presentation, covering so much ground on building resilient systems. I particularly liked the tip that you should design a microservice so it can run at least three copies across your system - if it works that way, you have overcome the major challenges in making that microservice scale horizontally.

Now on to all our usual sections: links to tools, articles, news, those talks and as ever, all the extracted tips from all of this month's referenced articles including those gems above.

A note from this newsletter's sponsor

Get total visibility in just 15 minutes with AppDynamics PRO,
A performance monitoring tool for Java/.NET apps.
It installs in minutes. Start your FREE TRIAL today.

News

Java performance tuning related news.

Tools

Java performance tuning related tools.

A note from this newsletter's sponsor

Site24x7.com : Deep dive Application Performance Monitoring
Fix performance issues with Java, .NET and Ruby platforms.
*** Monitor one app instance starting at $9 ***.

Articles

Jack Shirazi


Back to newsletter 172 contents


Last Updated: 2017-01-01
Copyright © 2000-2017 Fasterj.com. All Rights Reserved.
All trademarks and registered trademarks appearing on JavaPerformanceTuning.com are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. JavaPerformanceTuning.com is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
URL: http://www.JavaPerformanceTuning.com/news/news172.shtml
RSS Feed: http://www.JavaPerformanceTuning.com/newsletters.rss
Trouble with this page? Please contact us