2011-01-12 11 views
10

Normalmente paso datos entre mis servidores web (en diferentes ubicaciones) usando solicitudes HTTP (a veces usando SSL si es confidencial). Me preguntaba si había protocolos más ligeros que podría intercambiar HTTP (S) para que también admitan claves públicas/privadas como SSH o algo así.Otros protocolos comunes además de HTTP?

Utilicé los sockets de PHP para construir un cliente SMTP antes, así que no me importaría hacer eso si fuera necesario.

+6

HTTP ya es bastante ligero ... – skaffman

+1

¿Ah? Hmmm. Solo asumí que, dado que era tan ampliamente usado, debe estar hinchado como SOAP, Wordpress, Windows y otras cosas ... – Xeoncross

+1

Bueno, todo :) HTTP también es omnipresente y se usa en innumerables dominios de problemas diferentes. Eso es un testimonio de su flexibilidad y falta de equipaje. Lo mismo no se puede decir de esos otros. – skaffman

Respuesta

7

Hay montones y montones y montones de protocolos . Un montón. Comience aquí para obtener una lista. http://en.wikipedia.org/wiki/Internet_Protocol_Suite

SFTP es divertido para pasar datos. Funciona bien. Sin embargo, descubrirá que no es mucho mejor que HTTP porque HTTP es bastante simple. http://en.wikipedia.org/wiki/SSH_file_transfer_protocol

SMTP funcionaría. http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

Se puede hacer que SNMP funcione. http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol Tienes que empujar realmente el sobre.

Todos estos, sin embargo, implican sockets TCP/IP, que implican una gran cantidad de sobrecarga debido a la negociación de una conexión y el acuse de recibo de los paquetes.

Si quieres diversión real con gastos generales muy bajos, usa UDP.
http://en.wikipedia.org/wiki/User_Datagram_Protocol

Es posible que desee utilizar UDP confiable si le preocupan los mensajes que se eliminan. http://en.wikipedia.org/wiki/Reliable_User_Datagram_Protocol

+1

Gracias, investigaré UDP y RDUP.Pero tal vez es mejor simplemente permanecer con HTTP. Tendré que encontrar algún tipo de punto de referencia. – Xeoncross

0
+0

Bueno, no quiero simplemente poner los datos en el otro servidor: quiero que los datos sean recibidos y manejados por él. Supongo que podría configurar trabajos cron para buscar nuevos archivos cargados, pero eso quedaría rezagado en tiempo real. – Xeoncross

+0

Lo divertido es que en el protocolo solo está enviando datos con algún nombre de archivo arbitrario. Puede tener fácilmente un cliente que envía un archivo falso con los datos generados, y un servidor que toma los datos y los procesa sin almacenar el archivo. De hecho, eso no es muy diferente de un ".htm" "archivo" que aparecería en una url, que de hecho es generada por un script del lado del servidor. – GolezTrol

1

Me gustaría mencionar XMPP además de los protocolos ya enumerados en otras respuestas.

Es liviano y se usa en algunos sistemas de comunicación en "tiempo real" (por ejemplo, en GTalk).

+0

XML no es una luz como JSON, por lo que hay paquetes desperdiciados con XMPP. Por otra parte, el protocolo podría cambiarse para usar JSON o alguna otra transferencia simple de alta compresión. – Xeoncross

Cuestiones relacionadas