
Sun Java System Application Server Configuration NotesUse Sun Java System Application Server 8.2 version. If you are using Sun Java System Application Server 8.1 then we need patch 119167-02 along with Java SE 1.5.0_06. Use libumem for the appserver: LD_PRELOAD=/usr/lib/libumem.so asadmin start-domainUse JVM 1.5.0_06 Java options -server -XX:+AggressiveHeap -Xmx2560m -Xms2560m -XX:LargePageSizeInBytes=256m -XX:ParallelGCThreads=8 -Xss128k May have to tune the GC with -XX:ParallelGCThreads. May need multiple instances depending on application. If you log HTTP access or your application is using XA transactions or MDBs, then separate the access logs, transaction logs and imq files onto as many disks as possible. Mount the disks with these options: nologging,directio,noatime. If you run multiple instances of the application server, move the logs for each instance onto separate disks as much as possible. If the disk becomes a bottleneck then use application server 8.2 feature to write txlogs to a database. If you are using more than one network interface, then you will need to make sure that all the network interrupts are not going to the same core. Put the appserver processes into the FX scheduling class. Tune the thread pool to match the needs of the application. Size the HTTP Thread pool and ORB Thread pool as small as possible for better throughput. Start with 20-30 threads and add more if you see CPU starvation. Size the HTTP acceptors (acceptor-threads) to match the machine. A general rule of thumb to follow is have one acceptor thread per core. Turn off JSP recompilation. Disable access logs, dynamic reloading and autodeploy features. Change the application server log level to WARNING. References | ||||||