WebSockets 以什么频率更新比长轮询更有效?

At what frequency of updates do WebSockets become more efficient than longpolling?

我正在做一个项目,我想决定是使用 WebSockets 还是长轮询。

这提出了一个有趣的问题:使用 WebSockets 而不是传统的 HTTP 技术之间的盈亏平衡点是什么?显然,如果您需要每日更新,http 请求会更好,但对于实时更新,WebSockets 会更好。 (我认为。如果我错了,请纠正我!)

让我更具体一点:
假设为了获得良好的用户体验,Web 应用程序需要用户在 P.

时间段内进行更新

此外,假设我们只使用 WebSockets 将更新从服务器发送到客户端,并且发送的平均 JSON 对象看起来像这样(我包括这个是因为我想象平均数据大小事项):

{ 'animal' : 'dog',
  'people_who_have_petted'  : ['Foo', 'Bar', 'Thomas'], 
  'people_who_like' : ['Tom', 'Foo', 'Bar', 'Thomas','John', 'Mary'], 
  'people_who_dislike' : ['Jerry','Cat', 'Banker'] 
  'user_voted_phrase' : "Dogs are a man's best friend!"
}


根据您的经验,在大约 P 什么时期(无需非常精确)使用 WebSockets 而不是传统的 http 技术来实现扩展和成本目的更有意义?

正确的决定取决于很多因素,而不仅仅是刷新间隔。

Hard downsides of long polling?

根据我的经验,我不会使用长轮询,除非有很大的原因或者我的应用程序的数据推送功能非常乏味。