今天就跟大家聊聊有关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:
tcp方式:
fastcgi_pass 127.0.0.1:9000;
socket方式:
fastcgi_pass unix:/dev/shm/php-cgi.sock;
php-fpm.conf中配置链接监听:
tcp方式:
listen = 127.0.0.1:9000
socket方式:
listen = /dev/shm/php-cgi.sock
/dev/shm是内存文件系统挂载点,比默认的/tmp/php-cgi.sock磁盘文件更快
看完上述内容,你们对nginx与php-fpm怎么实现通信有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。