In this part, we saw a lot of ways to gather information about the JVM and your application. We also saw that the JVM itself provides a set of tools to give you information about the memory, CPU, and garbage collection. Most of them are available through the command line (which can be very handy when benchmarking a machine without any UI), but they also come with several user interfaces, enabling you to get the information easily once you can connect to the JVM. One of these tools is the JMC: it gives you a lot of information and even allows you to drill down into the method invocations to have a detailed view of your application.
However, it is not enough and you may need to get access to the server information about the pool usage, and in this case, the server can give you some more information about configuration issues (such as a pool configured too small). Then, a...