ulimit設置句柄數

發表于:2014-02-26來源:豆瓣作者:@行知-追尋技術之美點擊數: 標簽:ulimit
這幾天在做一個性能測試,寫了一個模擬發送http的程序。模擬100并發的情況下,隨機發http get的請求。放到服務器上運行一段時間拋出Too many open files的異常。

  這幾天在做一個性能測試,寫了一個模擬發送http的程序。模擬100并發的情況下,隨機發http get的請求。放到服務器上運行一段時間拋出Too many open files的異常。

  異常信息簡單的信息如下:

  I/O exception (java.net.SocketException) caught when processing request: Too many open files

  大致了解下,是文件句柄數設置太低導致的。一般linux服務器默認的句柄數都是1024,執行ulimit -n,查看了下當前的seesion環境下句柄數。果然就是1024.

  當前登錄的賬戶并不是root,直接切換到root賬戶,修改后切回到操作用戶metaboy 。發現句柄數并沒有改變。

  所以使用下面的命令:

  ulimit -n 65535

  并不能有效的解決這個問題。直接這么修改open files 不能得到保持。下面給出的方法最簡單和最直接:

  修改/etc/security/limits.conf 添加如下一行:

  * - nofile 65535

  修改/etc/pam.d/login添加如下一行

  session required /lib/security/pam_limits.so

  最重要的,修改完這些后,要重新登錄下才行,不然該session的句柄數不會生效。

原文轉自:http://www.wangyuxiong.com/archives/52144

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97