nginx php7 并发,nginx + php做服务,在高并发的时候会出现一些错误

目前有两种方法可以试试。

环境: ubuntu + nginx + php7.1

一、修改参数:

1、内核修改

sudo vim /etc/sysctl.conf

net.ipv4.tcp_max_syn_backlog = 4096

net.core.netdev_max_backlog = 4096

重新启动

sudo reboot

2、php-fpm配置修改修改  /etc/php/7.1/fpm/pool.d/www.conf

listen.backlog = 4096

sudo service php-fpm7.1 restart

3、nginx配置修改

listen 80 default backlog=4096;

重新启动

sudo service nginx restart

二、添加php-fpm的master实例,会增加fpm的处理能力,也能减少报错的几率

1、拷贝php配置文件cd  /etc/php/7.1/fpm/

sudo cp php-fpm.conf  php-fpm2.confcd pool.d

sudo cp www.conf www2.conf

2、修改php的配置文件

sudo  vim  php-fpm2.conf

修改内容

pid = /run/php/php7.1-fpm2.pid

error_log = /var/log/php7.1-fpm2.log

include=/etc/php/7.1/fpm/pool.d/www2.conf

3、重新启动sudo /usr/sbin/php-fpm7.1 -y /etc/php/7.1/fpm/php-fpm2.conf

查看    ps -ef | grep php

或者进入  cd  /var/run/php  查看

5b72e8206b35c.png

关闭和重启

sudo  pkill  php-fpm

(关闭所有的php进程)

启动php1       sudo service php7.1-fpm restart

启动php2       sudo /usr/sbin/php-fpm7.1 -y /etc/php/7.1/fpm/php-fpm2.conf

4、nginx配置,在 nginx.conf中添加

upstream php-socks {

server unix:/run/php/php7.1-fpm.sock;

server unix:/run/php/php7.1-fpm2.sock;

}

在 *.conf的server中添加

fastcgi_pass  php-socks;   # unix:/run/php/php7.1-fpm.sock;

重新启动sudo service nginx restart

OK!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值