AIX:Resource temporarily unavailable解决

环境:

服务端:

AIX5.3

程序内容:

socket 监听, fork子进程

客户端:

WIN7 HOME

程序内容:

Java socket

问题: 当客户端连续发起10000个请求时,服务端出现错误:fork error: Resource temporarily unavailable.

原因,打开文件数超过当前用户设定上线.查看当前用户的资源使用限制:

ulimit -a

[/home/test] ulimit -a
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         131072
stack(kbytes)        32768
memory(kbytes)       32768
coredump(blocks)     2097151
nofiles(descriptors) 2000
[/home/mssk/test]

解决:

方法1. 适当增大nofiles数量,不是不是最佳方案,有可能还是超限制

方法2. 对并发数进行限制,保证不超过某个固定值

你可能感兴趣的:(java,socket,AIX)