大学生新闻网
大学生新闻大学生活校园文学大学生村官
社会实践活动社会实践经历社会实践报告社会实践总结社会实践心得
全国排名校友会版软科排名分类排名本科排名一本排名二本排名专科排名
求职简历职场法则面试技巧职场故事求职招聘
英语学习计算机学习电气工程机械工程经济管理建筑设计财务会计
申请书证明书检讨书自荐信演讲稿心得体会调查报告读后感求职信推荐信其它范文
 

错误代码确定跟nginx无关吗

在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模式。

apache-like

从更改完毕到现在的测试表明上述方式的效果还是很明显的,并没有发现一次Nginx502badgateway或504GatewayTime-out错误。当然,如果你的VPS或者服务器的性能足够好可以根据具体情况不必做无谓的改动。

    作者:大学生新闻网 来源:大学生新闻网
    发布时间:2018-09-02 浏览:
  • 面对面学习总是比在线学习好吗
  • 最近关于重新开放学校的激烈争论主要取决于在线教学的质量。这是可以理解的。但是,关于在线指导的许多内容仍然被误解。现在该改变这种
  • 06-09 关注:73
  • 在线学习的4条建议
  • 印第安纳大学(IU)的新资源介绍了使在线学习成功的一些最重要因素。

    当IU关闭体育课并转向在线教学时,电子学习研究与实践实验室开始
  • 06-09 关注:65
  • 激光视盘 可以自由放置和使用
  • 激光视盘采用丙烯酸塑料制成,大多数光盘直径为30厘米(C12英寸),也有13厘 米(5英寸)的小型盘,盘的转速为1500转/分,但应指出,为
  • 09-18 关注:133
  • 数字技术用于语音信号高效多路传输
  • 欣赏声音、喜爱音乐,这是音响的源点。为了满足这一需要,音响系统需由两个系统组成。其一是对音乐与人声加以收音并加以调整,记录在唱
  • 09-18 关注:122
  • 电脑正在进入有线电视网
  • 当前,随着数字计算机和多媒体技术的发展,许多大的计算机制造公司都提出,在微型计算机上实现电视的功能,即利用计算机网络来接收数字
  • 09-18 关注:128
  • 电视信号的传输过程
  • 当前,像高保真音响、高清晰度电视、VCD、数码录音等新词汇大量充斥在我们身边,它们一方面代表这新技术的涌现,另一方面也体现了这些
  • 09-18 关注:196
  • 计算机6.2.180x86中断结构及类型
  • 从Intel 8086/8088、286、386、486直到Pentium系列微处理器,它们中断系统的结构基本相同,不同之处主要有两点:一是 因CPU的工作模式
  • 09-18 关注:132
  • 中断技术引入计算机系统
  • 中断技术是现代计算机系统中很重要的功能。最初,中断技术引入计算机系统,只是为了解决快速的CPU与慢速的外部设备之间传送数据的矛盾
  • 09-18 关注:261