今天就跟大家聊聊有關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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。