fad*_*bee 16 streaming json multipart websocket ldjson
我正在编写一个简单的流式JSON服务.它由间歇性发送的JSON消息组成,持续很长一段时间(数周或数月).
通过普通TCP套接字发送多个JSON消息的最佳实践是什么?
我看过的一些替代方案(及其缺点)是:
这样做是否有良好的,或至少是完善的方式?
Jav*_*ier 14
我的前两个选项是:
执行早期TCP协议的工作:发送一条消息(在您的情况下为JSON对象)并关闭连接.客户端检测到它并重新打开以获取下一个对象.
执行chunked-mode HTTP的工作:首先发送JSON对象中的字节数,换行符(HTTP中的CRLF)和JSON对象.客户端只需要计算字节数就可以知道下一个字节何时成为下一个对象.
当您想要提供浏览器客户端时,最接近原始TCP的是WebSockets.
WebSockets有足够的动力,浏览器供应商将提高支持(Chrome 14和Firefox 7/8支持最新的协议草案),并且广泛的客户端和服务器框架将支持它.
有有已经几个开源客户端库,包括高速公路的WebSocket.
当你想为自己的东西(在原始TCP之上)烘焙时,我建议你的JSON消息使用长度前缀格式,即Netstrings
免责声明:我是高速公路的作者并为Tavendo工作.
我已经整理了我和其他一些开发人员正在做的事情:
http://en.wikipedia.org/wiki/Line_Delimited_JSON
它的优点是兼容 netcat/telnet。
另请参阅: http: //ndjson.org/
| 归档时间: |
|
| 查看次数: |
16011 次 |
| 最近记录: |