码迷,mamicode.com
首页 > Web开发 > 详细

nginx与php-fpm通讯方式

时间:2019-01-05 19:49:45      阅读:279      评论:0      收藏:0      [点我收藏+]

标签:面向   协议栈   domain   爆发   http   一个   两种   服务   大数   

nginx和php-fpm的通信方式有两种,一种是tcp socket的方式,一种是unix socke方式。

tcp socket
tcp socket的优点是可以跨服务器,当nginx和php-fpm不在同一台机器上时,只能使用这种方式。


unix socket
Unix domain socket 又叫 IPC(inter-process communication 进程间通信) socket,用于实现同一主机上的进程间通信。socket 原本是为网络通讯设计的,但后来在 socket 的框架上发展出一种 IPC 机制,就是 UNIX domain socket。虽然网络 socket 也可用于同一台主机的进程间通讯(通过 loopback 地址 127.0.0.1),但是 UNIX domain socket 用于 IPC 更有效率:不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进程。这是因为,IPC 机制本质上是可靠的通讯,而网络协议是为不可靠的通讯设计的。

 

技术分享图片

 

unix socket减少了不必要的tcp开销,而tcp需要经过loopback,还要申请临时端口和tcp相关资源。但是,unix socket高并发时候不稳定,连接数爆发时,会产生大量的长时缓存,在没有面向连接协议的支撑下,大数据包可能会直接出错不返回异常。tcp这样的面向连接的协议,多少可以保证通信的正确性和完整性。

nginx与php-fpm通讯方式

标签:面向   协议栈   domain   爆发   http   一个   两种   服务   大数   

原文地址:https://www.cnblogs.com/naci/p/10225406.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!