nginx与php-fpm两种通信方式

unix socket方式要比tcp的方式快,而且消耗资源少,因为socket之间在nginx和php-fpm的进程之间通信,而tcp需要经过本地回环驱动,还要申请临时端口和tcp相关资源。

unix socket会显得不是那么稳定,当并发连接数爆发时,会产生大量的长时缓存,在没有面向连接协议支撑的情况下,大数据包很有可能就直接出错并不会返回异常。而TCP这样的面向连接的协议,多少可以保证通信的正确性和完整性。

tcp方式:tcp协议监听本机9000端口,需要通过网络连接,占用端口,占用网络资源

socket方式:使用unix domain socket连接套接字/dev/shm/php-cgi.sock,不走网络,速度更快,

nginx server模块设置fastcgi:

  1. tcp方式:
fastcgi_pass 127.0.0.1:9000;
  1. socket方式:
fastcgi_pass unix:/dev/shm/php-cgi.sock;

php-fpm.conf中配置链接监听:

  1. tcp方式:
listen = 127.0.0.1:9000
  1. socket方式:
listen = /dev/shm/php-cgi.sock

/dev/shm是内存文件系统挂载点,比默认的/tmp/php-cgi.sock磁盘文件更快

转载于:https://my.oschina.net/u/3054838/blog/3092948

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值