zoukankan      html  css  js  c++  java
  • php-fpm.conf详细解析篇

    一:php-fpm.conf详细解析篇:

    pm = static (静态模式)时只需修改 max_children数值
    pm = dynamic (动态模式)时只需修改其它三个数值
    
    pm.max_children:静态方式下开启的php-fpm进程数量。
    pm.start_servers:动态方式下的起始php-fpm进程数量。
    pm.min_spare_servers:动态方式下的最小php-fpm进程数量。
    pm.max_spare_servers:动态方式下的最大php-fpm进程数量。
    

    设置”max_children”需要根据服务器的性能进行设定,每一个php-cgi所耗费的内存在20M左右,因此我的”max_children”我设置成20个,20M*20=400M也就是说在峰值的时候所有PHP-CGI所耗内存在400M以内,低于我的有效内存512mb。这样能保证,在PHP大并发的情况下不会502错误。

    设置”request_terminate_timeout”如果你的服务器性能足够好,且宽带资源足够充足的话你可以直将”request_terminate_timeout”设置成0s。0s的含义是让PHP-CGI一直执行下去而没有时间限制。而如果你做不到这一点,也就是说你的PHP-CGI可能出现某个BUG,或者你的宽带不够充足或者其他的原因导致你的PHP-CGI能够假死那么就建议你给”request_terminate_timeout”赋一个值,这个值可以根据你服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分钟都可以。由于我的服务器PHP脚本需要长时间运行,有的可能会超过10分钟因此我设置了900秒,这样不会导致PHP-CGI死掉而出现502 Bad gateway这个错误。

    二.修改最大同时连接文件数
    系统默认是1024,最好改大些
    使用ulimit -a 可以查看当前系统的所有限制值,使用ulimit -n 可以查看当前的最大打开文件数。
    新装的linux默认只有1024,当作负载较大的服务器时,很容易遇到error: too many open files。因此,需要将其改大。
    使用 ulimit -n 65535 可即时修改,但重启后就无效了。(注ulimit -SHn 65535 等效 ulimit -n 65535,-S指soft,-H指hard)

    有如下三种修改方式:

    ①在/etc/rc.local 中增加一行 ulimit -SHn 65535

    ②在/etc/profile 中增加一行 ulimit -SHn 65535

    ③在/etc/security/limits.conf最后增加如下两行记录

    * soft nofile 65535

    * hard nofile 65535

    具体使用哪种,试试哪种有效吧,CentOS中使用第1种方式无效果,使用第3种方式有效果,而在Debian中使用第2种有效果。

  • 相关阅读:
    ajax 同步模式与异步模式
    Ajax -get 请求
    Ajax -post 请求
    Ajax 遵循HTTP协议
    Ajax 发送请求
    宽高自适应案例
    伸缩导航案例
    伸缩属性的 grow与 shrink
    伸缩布局
    hdu-5858 Hard problem(数学)
  • 原文地址:https://www.cnblogs.com/sunbeidan/p/5016657.html
Copyright © 2011-2022 走看看