2011-01-12 27 views
10

Tôi thường chuyển dữ liệu giữa các máy chủ web của tôi (ở các vị trí khác nhau) bằng cách sử dụng các yêu cầu HTTP (đôi khi sử dụng SSL nếu nó nhạy cảm). Tôi đã tự hỏi nếu có bất kỳ giao thức nhẹ hơn mà tôi có thể trao đổi HTTP (S) cho điều đó cũng sẽ hỗ trợ các khóa công khai/riêng tư như SSH hoặc một cái gì đó.Các giao thức phổ biến khác ngoài HTTP?

Tôi đã sử dụng các ổ cắm PHP để xây dựng ứng dụng khách SMTP trước đó nên tôi sẽ không bận tâm khi thực hiện điều đó nếu cần.

+6

HTTP khá nhẹ ... – skaffman

+1

Ồ? Hmmm .. Tôi chỉ giả định rằng kể từ khi nó được sử dụng rộng rãi, nó phải cồng kềnh như SOAP, Wordpress, Windows, và những thứ khác ... – Xeoncross

+1

Cũng khá :) HTTP cũng phổ biến và được sử dụng trong vô số lĩnh vực vấn đề khác nhau. Đó là minh chứng cho sự linh hoạt và thiếu hành lý. Điều tương tự cũng không thể được nói cho những người khác. – skaffman

Trả lời

7

Có rất nhiều và rất nhiều và rất nhiều các giao thức . Rất nhiều. Bắt đầu ở đây để có danh sách. http://en.wikipedia.org/wiki/Internet_Protocol_Suite

SFTP thật thú vị khi truyền dữ liệu. Nó hoạt động tốt. Bạn sẽ thấy rằng nó không tốt hơn nhiều so với HTTP, tuy nhiên, vì HTTP khá đơn giản. http://en.wikipedia.org/wiki/SSH_file_transfer_protocol

SMTP sẽ hoạt động. http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

SNMP có thể được thực hiện để hoạt động. http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol Bạn phải thực sự đẩy phong bì.

Tất cả những điều này, tuy nhiên, liên quan đến ổ cắm TCP/IP, liên quan đến số tiền hợp lý trên không vì thương lượng kết nối và xác nhận gói.

Nếu bạn muốn thực sự thú vị với chi phí rất thấp, hãy sử dụng UDP.
http://en.wikipedia.org/wiki/User_Datagram_Protocol

Bạn có thể muốn sử dụng UDP đáng tin cậy nếu bạn lo lắng về việc thư bị xóa. http://en.wikipedia.org/wiki/Reliable_User_Datagram_Protocol

+1

Cảm ơn, tôi sẽ xem xét UDP và RDUP.Nhưng có lẽ tốt nhất là chỉ còn lại với HTTP. Tôi sẽ cần phải tìm ra một số loại điểm chuẩn. – Xeoncross

0

Tại sao bạn không chỉ cần sử dụng FTPS:

http://en.wikipedia.org/wiki/FTPS

hoặc SFTP

http://en.wikipedia.org/wiki/SSH_file_transfer_protocol

+0

Vâng, tôi không muốn chỉ cần đặt dữ liệu trên máy chủ khác - Tôi muốn dữ liệu được nhận và xử lý bởi nó. Tôi đoán tôi có thể thiết lập công việc cron để tìm kiếm các tập tin mới tải lên - nhưng điều đó sẽ tụt lại phía sau thời gian thực. – Xeoncross

+0

Điều thú vị là, trong giao thức bạn chỉ đang gửi dữ liệu với một số tên tệp tùy ý. Bạn có thể dễ dàng có một khách hàng gửi một tệp giả với dữ liệu được tạo và một máy chủ lấy dữ liệu và xử lý nó mà không thực sự lưu trữ tệp. Trong thực tế, điều đó không khác nhiều so với tệp '.htm'" sẽ xuất hiện trong url, thực tế được tạo bởi tập lệnh phía máy chủ. – GolezTrol

1

Tôi muốn đề cập đến XMPP ngoài các giao thức đã được liệt kê trong các câu trả lời khác.

Nhẹ và được sử dụng trong một số hệ thống liên lạc "thời gian thực" (ví dụ: trong GTalk).

+0

XML không phải là ánh sáng như JSON, vì vậy có các gói bị lãng phí với XMPP. Sau đó, một lần nữa, giao thức có thể được thay đổi để sử dụng JSON hoặc một số chuyển giao đơn giản, nén cao khác. – Xeoncross

Các vấn đề liên quan