在使用linux作为服务运行环境时,会遇到一些性能瓶颈,是因为系统默认设置的值比较低,一般是1024,很容易造成资源不够,不能创建进程或者不能打开文件。
一、首先使用ulimit -a查看系统ulimit设置
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) 127438 max locked memory (kbytes, -l) unlimited max memory size (kbytes, -m) unlimited open files (-n) 1048576 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) 10240 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
二、参数含义
-n 是文件句柄数量,代表程序可以打开的文件数量,默认是1024
-u 用户最大线程数,默认也是1024
三、修改配置
方法一: ulimit -n 102400
这种方法只能针对当前终端有效,重新登陆或重启后会恢复
方法二:将配置写到配置文件~/.bashrc 或者 /etc/profile
方法三:修改配置(推荐)
1、修改 ulimit -n
vi /etc/security/limits.conf * soft nofile 1048576 * hard nofile 1048576
2、修改ulimit -u
vi /etc/security/limits.d/90-nproc.conf # Default limit for number of user‘s processes to prevent # accidental fork bombs. # See rhbz #432903 for reasoning. * soft nproc 40960 root soft nproc unlimited
本文出自 “唐柏” 博客,请务必保留此出处http://4988084.blog.51cto.com/4978084/1863734
原文地址:http://4988084.blog.51cto.com/4978084/1863734