Java Weekly 44/15: JVM profiling, JAR Hell, JPA performance
Thorben Janssen returns for this week’s Java news which includes the basics of scaling Java EE applications, an exploration of JAR hell and Bennet Schulz’s second part of his series about MVC 1.0. Check out the hottest Java links and more for the week.
This post originally appeared on Thorben Janssen’s Java EE blog, where Java news is published weekly: thoughts-on-java.org.
Michael Nitschinger wrote an interesting post in which he showed how he uses JMH and JFR to benchmark his code, find the part that allocates too many objects and optimises it. This is definitely a good read if you’re into tools and performance optimisation: All The Small Things – JVM Profiling Lessons From The Trenches.
Lots of dependencies, shadowing and version conflicts create something we often call JAR Hell. Nicolai Parlog took some time to explain the reasons for it and to discuss the current options, like build tools and component systems, to deal with it: JAR Hell.
Scaling Java EE applications is most often not an easy task. You need to know your application very well and then choose the right approach for it. Abhishek Gupta created a nice overview about the different scalability options available for Java EE applications: Basics of scaling Java EE applications.
JPA offers an easy way to implement your persistence tier. But if you are not familiar with the finer details of it, you can easily introduce some inefficiencies that will slow down your application. JPA also offers several features to deal with these issues and 3 of them are explained in this post: Three JPA 2.1 features that will boost your application’s performance.
Java EE 8
Bennet Schulz posted the second part of his series about MVC 1.0. This time he had a look at the two different kinds of Models defined by the specification and explained how to use them: MVC 1.0 in Java EE 8 – How to work with Models.
This and that
The efficiency of remote and co-located teams is an often discussed topic. There are lots of examples for modern companies which seem to greatly benefit from new communication technologies and remote development teams. But co-location is still the more common team organisation (at least in Germany) and it also provides some benefits like easier communication between team members. Martin Fowler discussed different team location patterns and his experience from lots of discussions with different teams in his recent blog post: Remote versus Co-located Work.