Hitachi

uCosminexus Application Server Compatibility Guide


5.13.1 How to estimate the memory size of Explicit heap (Estimating memory size used in J2EE server)

The settings to use the Explicit Memory Management functionality are required as a prerequisite for tuning Explicit heap. The Explicit Memory Management functionality is enabled when -XX:+HitachiUseExplicitMemory is specified as the start option of JavaVM. In J2EE servers, there are default settings to use the Explicit Memory Management functionality. Also, the objects responsible for increasing the memory size of the Tenured area are set to be allocated in Explicit heap. Therefore, always estimate the memory size of Explicit heap required for the objects allocated by J2EE servers.

If the memory size of Explicit heap is not estimated properly, the Explicit Memory Management functionality is not effective.

In a J2EE server, deploy the following objects that cause increase in the memory size of the Tenured area, in Explicit heap:

You can calculate the memory size of Explicit heap used by the object for communicating with redirector, from the setup value of the definition file. For details about how to estimate, see 5.13.2 Memory size used by the object for communicating with redirector.

The memory size of Explicit heap used by the object related to HTTP session is actually estimated after acquiring information by running an application. For details on how to estimate the memory size, see 7.11.2 Memory size used by the object related to the HTTP session in the manual uCosminexus Application Server System Design Guide.

As a result of estimating the memory size of Explicit heap, if the memory size of Explicit heap used by the object related to the HTTP session is extremely large, correct the application design by referencing Appendix A Efficient Usage of the Explicit Heap Used in an HTTP Session in the manual uCosminexus Application Server System Design Guide. When estimating the HTTP session in V9 compatibility mode, specify false for the ejbserver.server.eheap.ajp13.enabled user property of the J2EE server, so that the object for communication with the redirector is not placed in the Explicit heap.