其神若何,月射寒江。
java 内存管理及性能调优
上一篇 /
下一篇 2009-12-16 00:06:28
/ 个人分类:性能测试
java 内存管理及性能调优
经过多次的调优实践,总结如下
调优总的思想:
1、调整JAVA内存的大小
2、内存不是越大越好,太小会频繁GC,太大GC一次的时间非常长
3、调整总体堆的内存,-Xms1024m -Xmx1024m好多情况表现很好
4、可以用visualGC观察,内存各个区的情况,old eden s0 s1 per区
一般per 64M够了,但是在Sping框架中,加载的类非常多,所以可适当加大
一般old区是young的两倍
可以配置JAVA启动参数,设置输出gc日志,比如tomcat配置catalina.bat文件
5、可以使用工具对输出的日志进行分析,检查full gc的时间
6、检测线程死锁,可以用jconsole,检测死锁,查看死的原因和死锁的代码具体位置
一般建议写线程代码的时候,最后给线程起名,这样容易识别线程
7、调整操作系统的文件句柄,因为每个连接在UNIX中是当作一个文件句柄来的,如果
太少了,会出现连接拒绝的情况。ulimit –n 可以查看文件句柄数目,一般机器可以设为1024,
机器好的可以设置大一点。在xp中,则有可能限制了线程数目,所以一般用win server版的系统。
收藏
举报
TAG: