0

我需要开发一个实时应用程序......只是想知道通过 websockets 推送图像是个好主意吗?我能想到的唯一优点是它会减少 HTTP 请求的数量,但是如果我必须对其进行编码然后发送它,这意味着更多的数据传输,那么它的缺点是。

有人可以列出优点和缺点吗?

4

1 回答 1

0

优点:

  • 您可以在(可能一直在运行的)服务器软件中即时生成图像。请注意,这并不是真正的优势,因为始终运行的服务器软件也可以直接提供 http 数据并即时生成它。

缺点:

  • 不会缓存任何数据。当客户端必须显示/加载相同的图像两次时,这是最无效的。
  • 您必须为编码烦恼。
  • 您必须以某种方式将传输的数据放入img只能通过data:-scheme 或 a canvas(至少这些是我能想象的唯一方法),这不是很灵活(并非所有浏览器都支持,长度限制)
  • 无法使用浏览器优化加载顺序的功能。
  • 移动客户端无法决定加载数据的天气。

进一步注意,必须设置较少的 http-connections 没有任何优势,因为 http 允许保持连接处于活动状态(参见http://www.w3.org/Protocols/HTTP/1.1/draft-ietf-http- v11-spec-01.html了解详情)。这样浏览器可以使用keep-alive,如果它支持它并且不必使用它,如果它不支持它。

于 2013-08-16T07:47:03.177 回答