HTML客户端接收连续的服务器输出数据流
HTML client receiving continous stream of server output data
对于登录的用户,接收由服务器生成的消息,实现能力的最佳机制是什么?由于服务器没有办法向用户发送信息,当有新消息要传递时,用户浏览器应该以特定的间隔轮询,以便在响应中接收新消息,另外,服务器应该有办法不发送已经传递给用户的消息。您可以使用类似公共聊天机制的东西绘制连接,但我需要的是接近实时的消息延迟,并且能够同时处理大约100个用户,从而尽可能减少流量。附加说明:只有当用户在线时才需要数据,不需要将该数据存储在服务器中,以便其他用户读取"历史"。
在我看来,有一种方法可以实现这一点-全局"消息框",服务器放置所有消息,用户浏览器不断轮询服务器,检查,如果最后收到的消息ID等于消息框中的最后消息ID。
问题是,如果这是正确的方法,或者还有其他方法来完成这些任务,因为实时数据的需求无处不在:传感器数据,多人游戏,聊天,股票市场等等…
XEP-0124:双向流Over Synchronous HTTP (BOSH)
https://github.com/ssoper/jquery-bosh 使用XMPP构建基于web的通知工具使用XMPP、PHP和JavaScript编写实时web应用程序这不是更好的策略吗?保持服务器和浏览器之间的tcp连接打开,并在有新信息时将更改流式传输到浏览器。
看看html 5的websockets。
这里有一个演示
你看过彗星吗?
Comet是一个web应用模型长时间保存的HTTP请求允许哪些将数据推送到web服务器浏览器,没有浏览器明确请求。
如果你搜索stackoverflow,有很多关于它使用的信息
相关文章:
- 更新网页上Web服务器程序的实时输出
- 将jQuery参数发送到服务器端并创建输出文本文件
- 通过select2-x-editable获取服务器端php输出
- Google应用程序脚本Web应用程序服务器处理程序输出中缺少嵌入式Javascript
- 服务器端从html页面(而不是jsp)输出编码,以防止XSS
- 使用服务器端代码从客户端提供的不可靠的API获取JSON输出,并以适当的格式在页面上呈现数据
- 启动节点调试服务器后,Grunt停止输出信息
- 当通过Javascript输出JSON内容时,我应该在服务器端还是客户端进行HTML转义
- WebSocket javascript客户端和python服务器.在输出中检索垃圾
- 当Ajax从服务器获取数据时,字体端还是后端应该创建html输出
- Webpack不创建输出文件(不使用Webpack开发服务器)
- 在没有json解析的情况下,在jade中输出服务器生成的json对象
- 在Javascript中,如何启动服务器端进程并监视其输出直到完成
- 在Meteor/Node中确定从服务器返回的输出是标准错误还是标准输出
- 当试图输出从服务器返回的json数据时,值显示未定义
- 如何根据需求将服务器发送的socket数据显示在浏览器的两个输出字段中
- 当按下按钮时,HTML画布输出JPG图像到服务器
- 在node.js中捕获控制台输出,而不编辑服务器代码
- 节点JS telnet服务器奇怪的输入和奇怪的输出
- HTML客户端接收连续的服务器输出数据流