|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
欢迎大家来到仓酷云论坛!比来在centos下搭建了一个nginx的WEB办事器,可是有伴侣说常常呈现以下毛病:
504GatewayTime-out
Theserverdidntrespondintime.
在CentOS下设置lnmp组合基础上用的都是一样的设置文件,一向都没呈现干涉题,可比来在一个vps上装置一样的情况以后,网站在线10多人就出现了翻开速率十分迟缓的情形,有好几回都是间接到达了nginx中设置的剧本最年夜超不时间300秒,了局招致nginx往客户端扫瞄器发送了一个504GatewayTime-out的毛病代码,剖析了以后修改了几处设置文件,终究制止了该情形的呈现。
从毛病代码基础能够断定跟nginx自己有关,次要是提交给php-fpm的哀求未能准确反应而招致,一样平常情形下,提交静态哀求的时分,nginx会间接把哀求转交给php-fpm,而php-fpm再分派php-cgi历程来处置相干的哀求,以后再顺次前往,最初由nginx把了局反应给客户端扫瞄器,但我这个vps今朝跑的是个纯php使用内容,实践上用户一切的哀求都是php哀求,有的泯灭工夫对照久,php-cgi历程就一向都被用满,而php-fpm自己的设置文件只翻开了10组php-cgi历程,如许的话在线用户略微多的话就会招致哀求没法被一般处置而堕落。
也许剖析出了缘故原由,上面做就对照简单了,起首是变动php-fpm的几处设置:
把max_children由之前的10改成如今的30,如许就能够包管有充分的php-cgi历程能够被利用;
把request_terminate_timeout由之前的0s改成60s,如许php-cgi历程处置剧本的超不时间就是60秒,能够避免历程都被挂起,进步使用效力。
接着再变动nginx的几个设置项,削减FastCGI的哀求次数,只管保持buffers稳定:
fastcgi_buffers由464k改成2256k;
fastcgi_buffer_size由64k改成128K;
fastcgi_busy_buffers_size由128K改成256K;
fastcgi_temp_file_write_size由128K改成256K。
好了,从头加载php-fpm和nginx的设置,再次测试,至今两周工夫内没有再呈现504GatewayTime-out的情形,算是到达效果了。
别的,php-fpm的默许静态处置体例会使得php-cgi的历程临时占用内存而没法开释,这也是招致nginx堕落的缘故原由之一,因而能够将php-fpm的处置体例改成apache形式。
<valuename=”style”>apache-like</value>
从变动终了到如今的测试标明上述体例的效果仍是很分明的,并没有发明一次Nginx502badgateway或504GatewayTime-out毛病。固然,假如你的VPS大概办事器的功能充足好能够依据详细情形不用做无谓的修改。
欢迎大家来到仓酷云论坛! |
|