sock文件


無論是mysql,uwsgi還是nginx都會用到sock文件

 

首先它是由程序自動創建的,並不是我們自己手動。它的作用是用來通信。與之相對應的是tcp socket ,一般的程序會同時支持這兩種方式,在服務器壓力比較大的時候,使用sock文件,效率更高。

 

Nginx連接fastcgi的方式有2種:

unix domain socket和TCP,

Unix domain socket 或者 TCP socket是一種終端,可以使同一台操作系統上的兩個或多個進程進行數據通信。與管道相比,Unix domain sockets 既可以使用字節流和數據隊列,而管道通信則只能通過字節流。Unix domain sockets的接口和Internet socket很像,但它不使用網絡底層協議來通信。Unix domain socket 的功能是POSIX操作系統里的一種組件。

在一切皆文件的Unix-like系統中,進程生產的socket通過socket文件來表示,進程通過向socket文件讀寫內容實現消息的傳遞。
在Unix中,本機之間進程通信通常用另外一種socket( Unix domain socket)。

 

像mysql,在配置文件中而已指定sock文件的位置,當然也可以用ip端口的形式

uwsgi也一樣,在他的配置文件ini中同樣可以配置

無論是mysql還是uwsgi,一定要重啟服務,sock文件才會創建。

 

就是以 .sock 為后綴的文件而已。UNIX 系統不以后綴區分文件類型,但為了方便,通常使用后綴來標識一下。.sock 文件極有可能是 UNIX 域套接字(UNIX domain socket),即通過文件系統(而非網絡地址)進行尋址和訪問的套接字。參見 man 手冊 unix(7)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM