Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29466
  • 博文数量: 8
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 90
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-13 20:34
文章分类

全部博文(8)

文章存档

2011年(1)

2010年(2)

2009年(5)

我的朋友

分类:

2009-11-26 09:12:16

在我们的客户现场服务器程序运行中出现socket资源和文件句柄太少的报错信息,导致我们的oss写文件失败,服务器设置如下:
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 256
pipe size (512 bytes, -p) 10
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 29995
virtual memory (kbytes, -v) unlimited
有什么办法可以增加这些资源呢。
分析如下:
tmossmd% ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) unlimited
stack(kbytes) 8192
coredump(blocks) unlimited
nofiles(descriptors) 256
vmemory(kbytes) unlimited
以上的nofiles就是文件描述符的变量值,将其增加到1024看是否解决问题,该值受rlim_fd_cur这个参数的影响,可以用ulimit -n number命令来修改。只对当前的窗口生效
在/etc/system文件设置rlimi_fc_max和rlim_fd_cur格式如下:
set rlim_fd_max=65535
set rlim_fd_cur=102400
命令ulimit使用格式如下:
usage: ulimit [ -HSacdfnstv ] [ limit ]ulimit -a是显示各参数的设置值,ulimit -n是用来设置fd的最大值的
实际上修改如下:
1)修改/etc/system中的定义,并重启机器。
set rlim_fd_max = 4096
set rlim_fd_cur = 1024
2)在用户的.cshrc里面设置了
limit descriptors 1024
修改后,即使重新登录也能生效
至此问题解决
阅读(1226) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~