Improving Java application performance
This section describes some changes that can be made to improve the performance of Java™ applications on the systems that are based on zPDT®. Some changes are implemented as follows. You can refer to the following examples for other applications.
The Java application performance can be improved by using some tuning options and a persistent Java cache that can even speed up to restart the complete system.
Improving the performance with Java cache and tuning options
- z/OS Explorer
- RSE APINote: RSE API shares the cache with z/OS Explorer.
- Dependency Based Built (Personal and Shared Daemons)
- z/OS Connect EE
- z/OS Management Facility
- UrbanCode® Deploy
- Debug Profile Service
- Xms256m
- Xmx512m
- Xquickstart
- Xshareclasses:nonFatal
- Xshareclasses:groupAccess
- Xshareclasses:cacheDirPerm=0777
- Xscmx50m
- Xshareclasses:cacheDir=/javasc/xxx,name=yyyNote: For the values of xxx and y, see the details of JACHER REXX that are described in the JCACHER.
- Xlp:objectheap:pagesize=1m,warn,pageable
- Xlp:codecache:pagesize=1m,pageable
- Xtune:virtualized
This option was removed from the default CICS® WebSphere® Liberty profile because this option caused negative impact to the Liberty startup.
Persisting Java cache
The Java cache is stored in the memory. To persist the Java cache and obtain the benefits during the restart process, the cache must be saved to a file system, and then be restored back to the memory in the early process of z/OS startup. Some automation was built by using NetView®, REXX, and a UNIX System Services file system.
- RESTCASH
- Process to restore the cache in the memory when a z/OS system is started.
- JCACHER
- General utility to manage the Java cache. JCACHER utility is running during system shutdown to back up the cache in the memory to a UNIX System Services file system. The only prerequisite is to shut down the system in a normal way by using NetView. For more information on how to use this utility, see the details in the FEU.XXXX.PROCLIB(JCACHER).
Other considerations
To speed up the startup of a z/OS system, you can select not to activate or start the subsystems that consume significant resources during initial IPL process if you do not use the subsystems. Take the following z/OS subsystems as examples.
- z/OSMF for the task IZUSVR1
- z/OS Explorer for the task RSED and JMON
- UrbanCode for the task BUZAGNT
- z/OS Connect for the task ZOSCSRV
- Dependency Based Build Daemons (DBB and DBBS)
- Debug for the tasks EQAPROF and EQARMTD
For more information on how to enable or disable the specific task startup during IPL process, see Adding tasks to NetView automation.