ulimit linux 调优

转载 2011年01月07日 14:01:00

ulimit -a 用来显示当前的各种用户进程限制。
    Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,
    设置各linux 用户的最大进程数,下面我把某linux用户的最大进程数设为10000个:
     ulimit -u 10000
     对于需要做许多 socket 连接并使它们处于打开状态的 Java 应用程序而言,
     最好通过使用 ulimit -n xx 修改每个进程可打开的文件数,缺省值是 1024。
     ulimit -n 4096 将每个进程可以打开的文件数目加大到4096,缺省为1024
     其他建议设置成无限制(unlimited)的一些重要设置是:
     数据段长度:ulimit -d unlimited
     最大内存大小:ulimit -m unlimited
     堆栈大小:ulimit -s unlimited
     CPU 时间:ulimit -t unlimited
     虚拟内存:ulimit -v unlimited
  
     暂时地,适用于通过 ulimit 命令登录 shell 会话期间。
     永久地,通过将一个相应的 ulimit 语句添加到由登录 shell 读取的文件中, 即特定于 shell 的用户资源文件,如:

1)、解除 Linux 系统的最大进程数和最大文件打开数限制:
        vi /etc/security/limits.conf
        # 添加如下的行
        * soft noproc 11000
        * hard noproc 11000
        * soft nofile 4100
        * hard nofile 4100
       说明:* 代表针对所有用户
                    noproc 是代表最大进程数
                    nofile 是代表最大文件打开数
2)、让 SSH 接受 Login 程式的登入,方便在 ssh 客户端查看 ulimit -a 资源限制:
        a、vi /etc/ssh/sshd_config
             把 UserLogin 的值改为 yes,并把 # 注释去掉
        b、重启 sshd 服务:
              /etc/init.d/sshd restart
3)、修改所有 linux 用户的环境变量文件:
vi /etc/profile
ulimit -u 10000
ulimit -n 4096
ulimit -d unlimited
ulimit -m unlimited
ulimit -s unlimited
ulimit -t unlimited
ulimit -v unlimited



/**************************************

有时候在程序里面需要打开多个文件,进行分析,系统一般默认数量是1024,(用ulimit -a可以看到)对于正常使用是够了,但是对于程序来讲,就太少了。
修改2个文件。
1./etc/security/limits.conf
vi /etc/security/limits.conf
加上:
* soft nofile 8192
* hard nofile 20480
2./etc/pam.d/login
session required /lib/security/pam_limits.so
**********
另外确保/etc/pam.d/system-auth文件有下面内容
session required /lib/security/$ISA/pam_limits.so
这一行确保系统会执行这个限制。
***********
3.一般用户的.bash_profile
#ulimit -n 1024
重新登陆ok





本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/60332/showart_472398.html

 

***************************

 

使用ulimit -a 可以查看当前系统的所有限制值,使用ulimit -n 可以查看当前的最大打开文件数。

新装的linux默认只有1024,当作负载较大的服务器时,很容易遇到error: too many open files。因此,需要将其改大。

使用 ulimit -n 65535 可即时修改,但重启后就无效了。(注ulimit -SHn 65535 等效 ulimit -n 65535,-S指soft,-H指hard)

有如下三种修改方式:

1.在/etc/rc.local 中增加一行 ulimit -SHn 65535
2.在/etc/profile 中增加一行 ulimit -SHn 65535
3.在/etc/security/limits.conf最后增加如下两行记录
* soft nofile 65535
* hard nofile 65535

具体使用哪种,试试哪种有效吧,我在 CentOS中使用第1种方式无效果,使用第3种方式有效果,而在Debian中使用第2种有效果

相关文章推荐

Linux 调优方案, 修改最大连接数(ulimit命令)

Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,设置各linux 用户的最大进程数 可以用ulimit -a 来显示当前的各种用户进程限制。 下面我把某linu...
  • isoleo
  • isoleo
  • 2016年06月22日 10:58
  • 6243

Linux 调优基本策略(ulimit)

ulimit -a 用来显示当前的各种用户进程限制。     Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,     设置各linux 用户的最大进程数,下面...

linux ulimit命令调优系统参数

功能说明:控制shell程序的资源。 语  法:ulimit [-aHS][-c ][-d ][-f ][-m ][-n ][-p ][-s ][-t ][-u ][-v ] 补充说明:u...

linux调优基本策略—ulimit

linux调优基本策略—ulimit      ulimit -a 用来显示当前的各种用户进程限制。       Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源...

linux_ulimit的使用

  • 2012年12月12日 12:35
  • 37KB
  • 下载

linux的ulimit各种限制之深入分析

这是一篇非常好的文章,对ulimit的各个限制参数讲得非常透彻。原文链接:http://home.lupaworld.com/home-space-uid-56821-do-blog-id-23281...

Linux 下Oracle 环境变量- bash- ulimit- open files- cannot modify limit 解决

设置Oracle 环境变量的时候报错:[oracle@qs-dmm-rh1 ~]$ source .bash_profile-bash: ulimit: open files: cannot modi...

[转]LINUX ulimit

概述 系统性能一直是一个受关注的话题,如何通过最简单的设置来实现最有效的性能调优,如何在有限资源的条件下保证程序的运作,ulimit 是我们在处理这些问题时,经常使用的一种简单手段。ulimit 是...

ulimit值(Linux文件句柄数量)

在Linux下面部署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题,比如还有Squid做代理,当文件打开数到900多时速能就非常快的下降,有可...
  • baiydn
  • baiydn
  • 2011年01月20日 11:28
  • 280

linux ulimit生效的问题

如果一个系统的ulimit进行了修改,是否必须得重新登录才能生效? 重新剩下生效后测试通过。 但是如果仅仅是修改文件,然后ulimit -a 是不生效的。但是ulimit -n 5000这种如果是在...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ulimit linux 调优
举报原因:
原因补充:

(最多只允许输入30个字)