linux系统中的几个参数
因为程序出了错误:
java.net.SocketException: Too many open files
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.verye.nad.framework.communication.SocketListener.run(SocketListener.java:61)
at java.lang.Thread.run(Thread.java:595)
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.verye.nad.framework.communication.SocketListener.run(SocketListener.java:61)
at java.lang.Thread.run(Thread.java:595)
有关的几个参数:
查看某进程的打开文件数:lsof -p pid |wc -l
修改系统每个用户可打开的最大文件数:ulimit -n #n (ulimit -a)
修改系统可打开的最大文件数:vi /etc/sysctl.conf
kernel.core_uses_pid = 1
kernel.shmall=8388608
kernel.shmmax=134217728
net.core.netdev_max_backlog=600
net.ipv4.tcp_max_syn_backlog=2048
kernel.sem="250 32000 100 128"
kernel.threads-max=50000
kernel.rtsig-max=4096
fs.file-max = 327680
kernel.shmall=8388608
kernel.shmmax=134217728
net.core.netdev_max_backlog=600
net.ipv4.tcp_max_syn_backlog=2048
kernel.sem="250 32000 100 128"
kernel.threads-max=50000
kernel.rtsig-max=4096
fs.file-max = 327680
[@more@]