2011-09-28 12 views

Respuesta

3

En ahorro hay 2 cosas importantes: protocolo y transporte. El protocolo define cómo se serializan los datos en la secuencia de datos. Y el transporte define cómo se intercambian esas corrientes de datos entre entidades de comunicación.

Hay un protocolo json en ahorro que es compatible con javascript, pero en lo que respecta a los transportes, creo que Thrift solo admite 2 transportes de tcp sin formato y http. Más tarde se puede usar para invocar la operación en un servidor HTTP, y obtener el resultado de él, pero no al revés cuando lo necesite.

Supongo que es posible que pueda usar el protocolo json, pero tendría que arremangarse e implementar su propio transporte de websockets. Esta podría ser una tarea no trivial.

+0

¿Qué significa 'La capa de transporte puede usar AJAX o WebSockets'? fuente: https://thrift.apache.org/tutorial/js – FaaduBaalak

1

A partir de la versión .0.0.0 de Thrift, la respuesta es no.

En el lado del cliente, el javascript generado utiliza AJAX para su transporte como se ve en la biblioteca Thirft.js, por lo que si un cliente usara un WebSocket, entonces el transporte en Thrift necesita modificarse.

En el lado del servidor, el código de Java muestra un servidor de socket, pero creo que no necesita el apretón de manos necesario para el código del lado del servidor WebSocket. De nuevo, probablemente se agregará con bastante facilidad. Probablemente tenga más sentido para usted usar jWebSocket como su servidor y las clases de objetos Java creadas por ahorro que la versión Thrift del servidor. Puede inspeccionar el código para conocerlo mejor en Thrift. vea/lib/java/src/org/apache/thrift/section del trunk en Thrift.

Cuestiones relacionadas