thrift是否支持通过websockets发送数据?

时间:2011-09-28 12:22:30

标签: websocket thrift

我想使用thrift与Java服务器使用websockets将数据发送到浏览器。这可能吗?

3 个答案:

答案 0 :(得分:8)

根据这个问题:https://issues.apache.org/jira/browse/THRIFT-2355 Thrift在0.9版本的javascript编译器中收到了对网络套接字的支持。

答案 1 :(得分:4)

在节俭中有两件重要的事情:协议和运输。协议定义了数据如何序列化为数据流。传输定义了这些数据流如何在通信之间进行交换。

jift支持thrift中的json协议,但就传输而言,我认为Thrift仅支持2个传输原始tcp和http。稍后可以用于在HTTP服务器上调用操作,并从中获取结果,但不是相反,因为您需要它。

我猜你可以使用json协议,但你需要卷起袖子并实现自己的websockets传输。这可能是一项非常重要的任务。

答案 2 :(得分:1)

截至Thrift v.0.9.0,答案是否定的。

在客户端,生成的javascript使用AJAX进行传输,如Thirft.js库中所示,因此如果客户端要使用WebSocket,则需要修改Thrift中的传输。

在服务器端,Java代码显示了套接字服务器,但我相信它没有WebSocket服务器端代码所需的握手。同样,可能有点容易添加。使用jWebSocket作为服务器和thrift创建的Java对象类比服务器的Thrift版本更有意义。您可以在Thrift中检查代码以更好地了解它。请参阅Thrift中主干的/ lib / java / src / org / apache / thrift /部分。