为了账号安全,请及时绑定邮箱和手机立即绑定

web php 大并发优化调整参数

标签:
PHP

有高并发的业务,就必须要调整backlog。对于PHP而言,需要注意的有3方面:

    1、操作系统 | sysctl

    2、WEB前端 | 比如:Nginx

    3、PHP后台 | 比如:php-fpm

操作系统以CentOS为例,可通过默认配置 /etc/sysctl.conf 文件进行调整。比如:

net.core.somaxconn = 1048576 # 默认为128

net.core.netdev_max_backlog = 1048576 # 默认为1000

net.ipv4.tcp_max_syn_backlog = 1048576 # 默认为1024

WEB前端以Nginx为例,可通过默认配置 /etc/nginx/nginx.conf 文件中的监听选项来调整。比如:

listen       80 backlog=8192; # 默认为511

PHP后台,以PHP-FPM为例,可以通过默认配置 /etc/php-fpm.d/www.conf 文件进行调整。比如:

listen.backlog = 8192 # 默认为-1(由系统决定)

大系统下,如上3处都应该进行调整。

值得注意的是:

    PHP-FPM的配置文件中,关于listen.backlog选项的注释有些误导人:

; Set listen(2) backlog. A value of '-1' means unlimited. 
; Default Value: -1

实际上如果使用默认值,很容易出现后端无法连接的问题,按老文档上的解释这个默认是200。建议此处不要留空,务必设置一个合适的值。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消