对于Java8而言,堆内存的初识容量为机器实际内存大小的1/64, 最大内存不超过机器实际内存的1/4.

我们的生产环境一般最大4G内存是上限了,这个视具体业务而定,流量大的互联网公司单机内存占用超过16G就会考虑分布式环境了。

参数实例:

JAVA_OPTS="-server -Xmx4g -Xms4g -Xmn256m -Xss256k -XX:+DisableExplicitGC  -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -Duser.timezone=GMT+8"