nginx和php-fpm 是使用 tcp socket 还是 unix socket ?
转自
http://blog.csdn.net/qq624202120/article/details/60957634
从上面的图片可以看,unix socket减少了不必要的tcp开销,而tcp需要经过loopback,
还要申请临时端口和tcp相关资源。但是,unix socket高并发时候不稳定,连接数爆发时,
会产生大量的长时缓存,在没有面向连接协议的支撑下,大数据包可能会直接出错不返回异常。
tcp这样的面向连接的协议,多少可以保证通信的正确性和完整性。
如果是在同一台服务器上运行的nginx和php-fpm,并发量不超过1000,选择unix socket,因为是本地,可以避免一些检查操作(路由等),因此更快,更轻。
如果我面临高并发业务,我会选择使用更可靠的tcp socket,以负载均衡、内核优化等运维手段维持效率。