A blog for all of Performance Engineering Basics to advanced concepts of analysis, JVM monitoring, GC Tuning, Database Performance Tuning.
Feedback
Get link
Facebook
X
Pinterest
Email
Other Apps
Hey, Many thanks for dropping by to check out my blog and taking time to read through. If you have any questions / feedback, please drop an email to performance at jnantech dot com
Introduction This series of articles will introduce the reader to explore more about Performance Engineering, specifically how to deal with actual issues of the product in a production deployment scenario. This is the most discussed area and most of the people I have interacted with look forward to getting in to this role and deal with actual issues and make their contribution. This work requires knowledge and understanding from a multitude of aspects like – The product design Usage profile of the product CPU and Memory and Disk configuration of the platform Software configuration – Memory settings Connected software components and their impact The reader is expected to look at the problem holistically to make the best use of the resources being deployed and then tune the application to obtain the required performance. As t...
Introduction After all the comments and the feedback from the community which has been much encouraging, this is the second article in the engineering series also aimed at tuning the JVM. In the first one we had delved deep in to tuning G1GC which can get complex at times depending on the application design and its intended usage. Background In this article today, we will try to look at simple case of an application running Parallel GC which is primarily used for UI navigation of a complex micro service based system. Here we are using the terms simple and complex which might sound contradicting, but just to give a birds eye view, this application is primarily used for UI side navigation with internal API based communication with all the supporting micro services. So, this design is light weight and the heavy lifting is done by the services themselves, so the throughput is quite high and responsiveness is very important. In this context, the immediat...
JDK Nuances JDK upgrades is one of the most discussed topics as it is something that just cannot be changed without looking in to the code. This problem becomes more evident for large enterprise class applications. Despite the advances in JDK releases providing various optimizations / newer features, JDK8 we can still find JDK8 in being widely used. This can perhaps be related to the development effort needed to upgrade the underlying code. Even after taking the step of upgrading / recompiling the code on newer JDK’s like JDK11, there still come some issues which arise due to the enhancements and we will look at one such instance today in this brief blog post. To give a brief background this application is used for Indexing / Searching and uses Lucene to perform this task as I have described in the previous blog posts. But one change from the previous posts was that the JDK was upgrade to JDK11 from JDK8 after which this particular...