Feb 19
我们在linux下查看内存使用情况的时候往往会用:free -m 命令。得到的结果如下:
点击在新窗口中浏览此图片
显示内存占用为3823。我们根据经验会有这样的结论,系统启动后,随着时间的增加,快则几分钟,慢则几个小时,linux的内存占用会接近90%。如果真是这样,那是很恐怖的,但事实并非如此。真正计算linux内存占用的方法是:used – buffers – cached。如上图,内存占用实际为:3823 – 339 – 2951 = 532M。原因是linux下系统缓存的使用会内存优先,当应用程序需要内存时,会自动扔掉缓存给应用程序。

为了方便可以写个bash程序命名mem,内容如下:
#!/bin/sh
echo Mem Used: $(free -m | grep 'Mem:' | awk '{print $3-$6-$7}')M

然后增加可执行权限,mv到/usr/bin/里面。这样以后要想查看内存使用情况,直接在shell中执行mem命令即可。点击在新窗口中浏览此图片
Tags: ,
Nov 15
    Tomcat内存溢出的原因
    在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。

    这里根据平时遇到的情况和相关资料进行一个总结。常见的一般会有下面三种情况:

    1.OutOfMemoryError: Java heap space

    2.OutOfMemoryError: PermGen space

    3.OutOfMemoryError: unable to create new native thread.

    Tomcat内存溢出解决方案:
Tags: , , ,
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]