国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux文件句柄數導致php-cgi假死問題恢復教程

2024-08-27 23:55:40
字體:
來源:轉載
供稿:網友
  php-cgi假死問題會導致網站打不開網網站直接顯示502 Bad Gateway錯誤問題了,下文我們一起來看看此問題如何解決吧。
 
  最近,一臺生產中的服務器(CentOS 5.2 64位 4G內存),老是出現網站打不開,登錄到服務器上查看,發現Nginx和php-cgi都在運行,和平時不同的是此時php-cgi的 cpu占用為0,馬上查看文件句柄數限制.
 
  ulimit -n
 
  得到的結果是:1024,這個值對生產中的服務顯得偏小.
 
  網上給出的解決方案,大部分是直接輸入,ulimit -SHn 51200 # 51200可自己根據應用調整,此法缺點很明顯,一旦退出登陸,設置就失效了.
 
  也有說直接把該命令寫到/etc/rc.d/rc.local中的,今天找到一個正確的做法,打開/etc/security/limits.conf,里面有很詳細的注釋,找到如下設置,如果沒有就插入,代碼如下:
 
  * soft nofile 51200
 
  * hard nofile 51200
 
  退出后再次登陸,查看句柄數,已經正確設置為51200,如果有碰到類似情況,可以檢查一下看看是不是文件句柄數設置太小引起的.
 
  訪問時出現 502 Bad Gateway 的解決辦法
 
  Nginx 502 Bad Gateway的含義是請求的php-cgi已經執行,但是由于某種原因,一般是讀取資源的問題,沒有執行完畢而導致php-cgi進程終止,一般并發數太高的網站都容易出現此錯誤,出現502 Bad Gateway的原因有很多,但是大部分人修改下面的參數即可解決.
 
  更改nginx的幾個配置項,減少FastCGI的請求次數,盡量維持buffers不變,代碼如下:
 
  fastcgi_buffer_size 128k;
  fastcgi_buffers 2 256k;
  fastcgi_busy_buffers_size 256k;
  fastcgi_temp_file_write_size 256k;
  打開 /usr/local/php/etc/php-fpm.conf 文件,修改如下幾個參數:
 
  <value name="max_children">25</value>
  <value name="max_requests">2048</value>
  <value name="rlimit_files">65535</value>
  <value name="process_control_timeout">30s</value>
  <value name="request_terminate_timeout">60s</value>
  <value name="style">apache-like</value> //phpfensi.com
  request_terminate_timeout指的是fast-cgi的執行腳本時間,它默認是0s,0s的含義是讓php-cgi一直執行下去而沒有時間限制。如果你在此設成0s,那么當出現502 Bad Gateway的時候,這個502的狀態將一直持續下去不會改變,但是如果你設置成5s,那么當php-cgi假死5s以后會自動恢復,這個值可以根據你服務器的性能進行設定,這里我設置的是60s.
 
  max_children表示php-cgi的處理進程,如果max_children設置的較小,比如5-10個,那么php-cgi就會“很累”,處理速度也很慢,等待的時間也較長,如果長時間沒有得到處理的請求就會出現504 Gateway Time-out錯誤,設置max_children也需要根據服務器的性能進行設定,增大進程數,內存占用也會相應增大,正常情況下每個php-cgi所耗費的內存在20M左右,這里我設置的是25.
 
  php-fpm的默認靜態處理方式會使得php-cgi的進程長期占用內存而無法釋放,這也是導致nginx出錯的原因之一,因此可以將php-fpm的處理方式改成apache-like模式.
 
  修改完成執行lu-restart 即可(LuManager服務器管理系統).

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丰宁| 曲靖市| 马公市| 清河县| 喀喇| 澜沧| 云梦县| 名山县| 康乐县| 水富县| 富平县| 泰兴市| 太白县| 汉寿县| 通渭县| 乌恰县| 松江区| 天门市| 甘德县| 鹤山市| 张家港市| 正蓝旗| 阿巴嘎旗| 海淀区| 泸州市| 荆州市| 河西区| 本溪市| 涡阳县| 东乡县| 德州市| 寿宁县| 偃师市| 营口市| 聂荣县| 商丘市| 太仆寺旗| 濉溪县| 临漳县| 宜城市| 封丘县|