[问题] 关于 html5 server sent events

楼主: herbacin (herbacin)   2015-12-21 11:42:57
最近看了 html5 server sent events 的推播机制,
我想请问一下, server sent events 是基于http的基础上实现,
当client(浏览器)发出请求, 服务器接收到请求之后,
服务器不断开http的连线, 当服务器资料有更新或异动可推播到浏览器,
但此作法应该还是建立在http连线, 所以必须考虑到timeout的问题,
如果timeout设定太久不断线, 可能出现连线达到上限的问题, 如果timeout设定较短,
变成是当浏览器接收到timeout的event, 再重新发出一个新的request,
我想请问一下各位, 关于此部分大家是怎么处理的? 谢谢
作者: mmis1000 (秋月恋枫)   2015-12-21 22:08:00
你讲的东西叫"long polling",跟html5半点关系都没有那是很古早旧有的技术,至于要不被误认成timeout,只要在等待超过一段时间后,就回复client "没有发生更新"让client送新的request过来就好,这样一来,每个连线的回复时间就有一个上限,因此就不会timeout了至于连线数问题,那是跟平台/语言有关的问题,没有正解
作者: a19897811 (eric)   2015-12-22 19:07:00
原po讲的应该是这个 http://www.w3schools.com/html/html5_serversentevents.asp
楼主: herbacin (herbacin)   2015-12-23 18:24:00
是的, 他和long pooling不一样

Links booklink

Contact Us: admin [ a t ] ucptt.com