Top Tomcat Performance Problems: Database, Micro-Services and Frameworks

Datetime:2016-08-23 03:54:10          Topic: Tomcat  DataBase           Share

Because I have many Tomcat users out there I compiled my top 10 problem pattern list I use when analyzing a Tomcat environment. This list also applies to other App Servers, so keep reading if your app runs on Jetty, JBoss, WebSphere, WebLogic, Glassfish, etc:

  1. Database Access : Loading too much data inefficiently
  2. Micro-Service Access : Inefficient access and badly designed Service APIs
  3. Bad Frameworks : Bottlenecks under load or misconfiguration
  4. Bad Coding :  CPU, Sync and Wait Hotspots
  5. Inefficient Logging :  Even too much for Splunk & ELK
  6. Invisible Exceptions :  Frameworks gone wild!
  7. Exceptions :  Overhead through Stack Trace generation
  8. Pools & Queues :  Bottlenecks through wrong Sizing
  9. Multi-Threading :  Locks, Syncs & Wait Issues
  10. Memory :  Leaks and Garbage Collection Impact

If your app suffers from any of these problems I can guarantee that not even Docker, EC2 or Azure will help you. Throwing more computing power at your problems will not help at all!

In Part I of this blog series I focus on how I identify problem patterns on Database AccessService Access and  Bad Frameworks . Part II & Part III will cover the remaining items. And who knows – if you are up for the challenge I have for you at the end of the blog post — there might be more to come!

I will be using Dynatrace as it is my tool of choice, but my approaches should also work using other APM or Performance Diagnostics Tools! If you want to watch a video rather than reading this blog series check out my Tomcat Performance Analysis YouTube Tutorial instead.

... continue reading this blog





About List