第一次接触OOM

前几天机器上一直遇到cpu100%,负载很高,经常报out of memory。

今天机器又遇到了,感觉这个东西无从下手,内存不够,tree看了下cache是不是太多了。

清理了一下,其实占用的不是特别多。

看了下机器是,top 1是2核心,发现nginx占用的特别高。感觉无从下手,以为是安装某加安全产品的问题。

于是找了之前的同事(十五年老运维)

他让看下ulimit

[root@iZ25y7mkr9cZ ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 127426
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 127426
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

 

给他看了一下nginx.conf

worker_processes  auto;
worker_rlimit_nofile 1000000;

events {
        use epoll;
        worker_connections  512000;
}

 

改成:

user  www;
worker_processes  2;
worker_rlimit_nofile 65535;
 
events {
         use epoll;
         worker_connections  65535;
 }

之前worker_rlimit_nofile和worker_connections给的特别的大,worker_processes是自动。

修改完,果然负载和cpu下来很多。记录一下。

 身为搞安全在运维的路上越走越远....

posted @ 2016-11-25 10:36  sevck  阅读(414)  评论(0编辑  收藏  举报