Chinaunix首页 | 论坛 | 博客
  • 博客访问: 567457
  • 博文数量: 78
  • 博客积分: 2043
  • 博客等级: 大尉
  • 技术积分: 733
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-26 11:52
文章分类

全部博文(78)

文章存档

2011年(5)

2009年(64)

2008年(9)

分类: 系统运维

2009-12-29 14:24:49

在做linux服务器程序的时候,当流量上来,linux服务器的默认单进程的文件打开数肯定是不够的,一般非root用户进程默认只有1024个文件打 开权限,所有对文件的操作,对网络的操作,在linux下都作为一个文件打开,所以在并发量大的时候,这个限制很快就达到了。一旦达到这个限制,应用程序 就会报一个:too many open files的错误。解决这个问题就需要增大这个限制.....

当前设置最大打开文件数可以通过如下命令查看。

ulimit -n
1024
通过以下命令修改

ulimit -n 10240

这样并发文件数就达到了10240,不过这么设置,重启机器后不能保存。见下面的方法2:
修改 /etc/security/limits.conf文件中设置最大打开文件数
添加如下这行。

      * - nofile 30000
这行设置了每个用户的默认打开文件数为30000。注意"nofile"项有两个可能的限制措施。就是项下的hard和soft。要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定, 则hard和soft设定会同时被设定。

阅读(3421) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~