84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
À quoi sert le fichier .sock ? Je n'en ai aucune idée. . .
认证高级PHP讲师
signifie .sock 为后缀的文件而已。UNIX 系统不以后缀区分文件类型,但为了方便,通常使用后缀来标识一下。.sock 文件极有可能是 UNIX 域套接字(UNIX domain socket),即通过文件系统(而非网络地址)进行寻址和访问的套接字。参见 man 手册 unix(7)(命令:man 7 unix).
.sock
man 7 unix
Socket de domaine Unixhttp://en.wikipedia.org/wiki/Unix_domain_socket
Le contraire est TCP sockthttp://lists.freebsd.org/pipermail/freebsd-performance/2005-February/001143.html
Exemple (golang) : De ceci
server.go
package main import "net" func echoServer(c net.Conn) { for { buf := make([]byte, 512) nr, err := c.Read(buf) if err != nil { return } data := buf[0:nr] println("Server got:", string(data)) _, err = c.Write(data) if err != nil { panic("Write: " + err.Error()) } } } func main() { l, err := net.Listen("unix", "/tmp/echo.sock") if err != nil { println("listen error", err.Error()) return } for { fd, err := l.Accept() if err != nil { println("accept error", err.Error()) return } go echoServer(fd) } }
client.go
package main import ( "io" "net" "time" ) func reader(r io.Reader) { buf := make([]byte, 1024) for { n, err := r.Read(buf[:]) if err != nil { return } println("Client got:", string(buf[0:n])) } } func main() { c, err := net.Dial("unix", "/tmp/echo.sock") if err != nil { panic(err.Error()) } defer c.Close() go reader(c) for { _, err := c.Write([]byte("hi....")) if err != nil { println(err.Error()) break } time.Sleep(1e9) } }
Lors de l'exécution du serveur, le fichier /tmp/echo.sock sera suggéré
signifie
.sock
为后缀的文件而已。UNIX 系统不以后缀区分文件类型,但为了方便,通常使用后缀来标识一下。.sock
文件极有可能是 UNIX 域套接字(UNIX domain socket),即通过文件系统(而非网络地址)进行寻址和访问的套接字。参见 man 手册 unix(7)(命令:man 7 unix
).Socket de domaine Unix
http://en.wikipedia.org/wiki/Unix_domain_socket
Le contraire est TCP sockt
http://lists.freebsd.org/pipermail/freebsd-performance/2005-February/001143.html
Exemple (golang) :
De ceci
server.go
client.go
Lors de l'exécution du serveur, le fichier /tmp/echo.sock sera suggéré