作为运维人员,对部署的程序合理分配内存空间,显得十分重要,合理的分配内存,可以使程序高效运行,同时减轻了对资源的占用和浪费,针对天津出现的cpu占用率过高的问题(内存占用率过高导致),简单的了解了JVM(java 虚拟机)内存设置,特此做简单分享,jvm的内存分配机制并未深入,有时间可以更深入的学习下。
一、设置jvm内存的参数
1)-Xmx Java Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;
2)-Xms Java Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;
3)-Xmn Java Heap Young区大小,不熟悉最好保留默认值;
4)-Xss 每个线程的Stack大小,不熟悉最好保留默认值;
二、如何设置jvm的内存分配
1)在命令提示符下启动jvm时(只针对当前运行类生效)
例如 :java -Xmx128m -Xms64m -Xmn32m -Xss16m Test (截图以天津电信上发程序的某个shell脚本为例)