Linux web host - CHAPTER 14 SOLVING COMMON JAVA EE PERFORMANCE
CHAPTER 14 SOLVING COMMON JAVA EE PERFORMANCE PROBLEMS Figure 14-5. The shaded objects are those that have survived multiple major collections and are potential memory leaks. Some of this information is available through monitoring APIs, and detailed information is available through verbose garbage collection logs. The level of logging affects the performance of the JVM, and as with almost any monitoring technology, the more detailed (and useful) information you want, the more expensive it is to obtain. For the purposes of determining whether a memory leak exists, I use relatively standard settings that show the overall change in generational memory between garbage collections and draw conclusions from that. Sun reports the overhead for this level of logging at approximately 5 percent, and many of my clients run with these settings enabled all the time to ensure that they can manage and tune garbage collection. The following settings usually give you enough information to analyze: verbose:gc xloggc:gc.log XX:+PrintGCDetails XX:+PrintGCTimeStamps Observable trends in the heap overall can point to a potential memory leak, but looking specifically at the growth rate of the old generation can be more definitive. But remember that none of this investigation is conclusive: in order to conclusively determine that you have a memory leak, you need to run your application off-line in a memory profiler. IBM JVM Memory Management The IBM JVM works a little differently. Rather than starting with a large generational heap, it maintains all objects in a single space and frees memory as the heap grows. It runs different levels of garbage collections, and you can read in Chapter 9 about the various tuning options to optimize those collections. The main behavior of this heap is that it starts relatively small, fills
We recommend high quality webhost to host and run your jsp application: christian web host services.