mysql socket php fpm_php-fpm 使用 socket 方式和 nginx 通讯,(速度优化)

1、什么是域Socket

“Unix domain socket 或者 IPCsocket 是一种终端,可以使同一台操作系统上的两个或多个进程进行数据通信。与管道相比,Unix domain sockets 既可以使用字节流数和数据队列,而管道通信则只能通过字节流。Unix domain sockets的接口和Internet socket很像,但它不使用网络底层协议来通信。Unix domain socket 的功能是POSIX操作系统里的一种组件。 Unix domain sockets 使用系统文件的地址来作为自己的身份。它可以被系统进程引用。所以两个进程可以同时打开一个Unix domain sockets来进行通信。不过这种通信方式是发生在系统内核里而不会在网络里传播。”

nginx连接fastcgi的方式是http方式的,在linux还有一种速度更快的方法就是通过unix domain socket来完成,下面介绍这种方法:

php-fpm 使用 socket 方式和 nginx 通讯

建立 PHP-FPM 使用一个 Unix Socket

vi /etc/php-fpm.d/www.conf

[...]

;listen = 127.0.0.1:9000

listen = /tmp/php-fcgi.sock

[...]

重启PHP-FPM

systemctl restart php-fpm.service

配置文件:

vi /etc/nginx/conf.d/default.conf

配置内容如下:

[...]

location ~ \.php$ {

root /usr/share/nginx/html;

;fastcgi_pass 127.0.0.1:9000;

fastcgi_pass unix:/tmp/php-fcgi.sock;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

[...]

重启Nginx

#chmod 777 /tmp/php-fcgi.sock // 修改读写权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值