Khi nào nên sử dụng ổ cắm MySQL và khi nào nên sử dụng máy chủ: cổng?


19

Nhiều ứng dụng cho phép tôi kết nối với Mysql bằng tên người dùng, máy chủ mật khẩu và cổng. Một số cho phép tôi cấu hình một ổ cắm thay vì host:port.

Có bất kỳ lợi ích rõ ràng của cái này hơn cái kia? Tôi có thể tưởng tượng rằng một ổ cắm chỉ hoạt động khi MySQL trên cùng một máy. Là vậy sao? Và nếu vậy, có lợi ích gì khi sử dụng ổ cắm đó thay vì kết nối với localhost:3306?

Tôi không quá quen thuộc với các kết nối mạng và ổ cắm, vì vậy có lẽ tôi hoàn toàn thiếu một số thông tin quan trọng và câu hỏi của tôi chỉ đơn giản là ngu ngốc; Nếu vậy, bạn có thể giải thích những gì tôi đang thiếu?

Câu trả lời:


19

Chà, thật đơn giản.

Ổ cắm là giao tiếp dựa trên tệp và bạn không thể truy cập ổ cắm từ máy khác.

Mặt khác, các cổng được mở ra thế giới (phụ thuộc vào cấu hình) và bạn có thể truy cập mysql từ máy khác bằng cách sử dụng kết hợp máy chủ + cổng.

Ngoài ra, theo tôi hiểu nhiều về socket, chúng chỉ là sự kết hợp của host + port, chỉ ở định dạng tệp. Vì vậy, tôi không thấy bất kỳ lợi ích rõ ràng nào trong việc sử dụng bất kỳ trong số chúng (càng nhiều kiến ​​thức của tôi càng tốt).

Mặc dù cá nhân tôi thích sử dụng host + port hơn, vì mã của tôi trở nên linh hoạt hơn, vì tôi có thể di chuyển nó sang máy khác mà không phải thay đổi nhiều.

Sao chép dán từ một số bài cũ :

Ổ cắm Unix nhanh hơn một chút vì bạn không có tcp-phí. Nếu bạn nhận ra sự mất hiệu suất này là một câu hỏi về tải máy chủ. Nếu bạn không tải máy chủ rất cao, bạn sẽ không nhận ra nó.

Nếu bạn sử dụng Jails (FreeBSD) hoặc một số công nghệ ảo hóa khác để tách ví dụ: MySQL-Server khỏi Máy chủ web, bạn thường sử dụng thiết lập tcp / ip thay vì ổ cắm. Các quy tắc tường lửa cần phải hạn chế truy cập mặc dù.

Bạn cần tìm hiểu xem hệ thống của bạn có bị tải nặng hay không, vì vậy ổ cắm là bắt buộc hoặc bạn có thể tập trung vào một thiết kế hệ thống đẹp (tách dịch vụ), thì giải pháp tcp / ip sẽ tốt hơn.

Vì vậy, làm cho một câu trả lời dài ngắn:

Có, có một sự khác biệt hiệu suất, ổ cắm nhanh hơn. Nếu bạn không chịu tải máy chủ cao, chỉ cần chọn những gì phù hợp hơn với thiết kế hệ thống của bạn.


Nhưng khi tôi có cả hai, khi mysqld sống trên cùng một máy với máy khách; Có sự khác biệt trong việc sử dụng cái này hơn cái kia không? Là một cái nhẹ hơn, hiệu suất cao hơn, dễ bị lỗi hoặc bất cứ điều gì hơn so với cái khác?
cập bến

Chỉ cần cập nhật câu trả lời với một số thông tin thêm.
GeekRide

Và một số thông tin thêm.
GeekRide
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.