<![CDATA[Latest posts for the topic "Thắc mắc về (Domain) sockets ,Named pipes trong phân loại file"]]> /hvaonline/posts/list/24.html JForum - http://www.jforum.net Thắc mắc về (Domain) sockets ,Named pipes trong phân loại file /hvaonline/posts/list/37966.html#233265 /hvaonline/posts/list/37966.html#233265 GMT Thắc mắc về (Domain) sockets ,Named pipes trong phân loại file netstat -x - Nếu bạn có cài MySQL thì thử thay đổi đường dẫn socket (trong my.cnf) đi rồi kết nối từ command line với mysql -u <username> -p xem được không nhé. - Về named pipes, mở 3 cái Terminal rồi lần lượt chạy:
  • trên Terminal 1: mkfifo pipe trên Terminal 2: whoami > pipe trên Terminal 3: cat < pipe
]]>
/hvaonline/posts/list/37966.html#233422 /hvaonline/posts/list/37966.html#233422 GMT
Thắc mắc về (Domain) sockets ,Named pipes trong phân loại file /hvaonline/posts/list/37966.html#233628 /hvaonline/posts/list/37966.html#233628 GMT Thắc mắc về (Domain) sockets ,Named pipes trong phân loại file

Michael_Scotfield wrote:
Phần 1 : em thử comment phần socket sử dụng mysql.sock của mysql thì thấy vẫn connect bình thường. Theo em hiểu thì unix socket domain là những socket để các service trong 1 máy giao tiếp với nhau. Vậy thì khi đóng socket của mysql thì ta sẽ không connect được tới mysql. Phần 2: sau khi test thì em nhận thấy named pipes giống như 1 file tạm, nhưng khác ở chỗ là ta có thể truyền command thông qua named pipes còn file tạm thì ko được. 
Michael_Scotfield, named piped, socket vân vân chỉ các phương thức cho các process giao tiếp với nhau trên cùng một máy thông qua files. Mỗi loại có các điểm mạnh yếu khác nhau: Unix Domain Socket tuy là một file, nhưng vẫn phải được sử dụng như là một socket. Các process phải sử dụng network API để open/read/write đến file đó. Nếu process đó được thiết kế như một network service (giống như mysql vậy) thì các hàm đọc/ghi dữ liệu có thể sử dụng chung network API mà không cần bận tâm đó là socket thiệt (TCP/IP socket) hay là socket file. Chỉ có các hàm open/close mới cần phải cụ thể cho từng trường hợp. Named Pipe giống như cái ống nước, một đầu chảy vào, một đầu chảy ra. Bạn dùng cái gì "đổ vào" cũng được, và dùng cái gì hứng nước chảy ra cũng được. Dữ liệu được truyền đi theo dạng stream. Named Pip chỉ được một chiều. Nếu muốn truyền dữ liệu theo chiều ngược lại, mình phải làm thêm một cái pipe nữa. Vậy file tạm khác named pipe ở điểm nào? File tạm không phải ống nước mà chỉ là một thùng nước tạm. Bạn đổ nước vào rồi phải "save" thì mới có thể lấy nước ra được. Một điểm khác biệt quan trọng nữa là file thông thường khi được mở, process đó thường exclusive lock, nghĩa là cả file đều bị lock. Một process khác không thể mở file đó để đọc trừ khi process đầu unlock file tạm. Named Pipe thì khác, cả hai process có thể dùng mở một named piped (một ghi, một đọc) để truyền dữ liệu cho nhau dễ dàng hơn. khoai]]>
/hvaonline/posts/list/37966.html#233855 /hvaonline/posts/list/37966.html#233855 GMT