file-upload - socket.io 与 ajax 上传文件的 +/- 是什么?

标签 file-upload websocket socket.io scalability high-availability

我听说 Websocket(例如 socket.io)非常快,但它们需要每个客户端直接连接。它是否适合上传拥有许多客户端/频繁上传的视频托管文件?或者它会失败并且在这种情况下只能使用 ajax

最佳答案

我想说这取决于文件大小以及与客户端的连接持续时间。

如果您使用 HTML5 FileAPI 进行分块上传,然后使用 Websockets 上传数据,这可以显着减少传输的数据量,因为它们不需要为每个请求发送 HTTP header ;例如,如果您将 1GB 文件拆分为 5MB block ,这些值就会累加起来。

如果客户端持续连接,那么 Websockets 可以减少长时间轮询的需要,如果没有新信息推送到客户端,则会浪费服务器上的资源。

因此,Websockets 将减少所需的资源,但并非所有浏览器都可用。

关于file-upload - socket.io 与 ajax 上传文件的 +/- 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15561037/

相关文章:

django - 简单的 Django 图像上传 - 图像文件不保存

java - Websocket @OnMessage 永远不会触发二进制消息,只有文本

javascript - NodeJS函数被socketio事件中断

asp.net-mvc - <input type ="file"/> 的 Html 帮助器

java - ExtJS 文件上传响应?

asp.net - 文件上传控件在更新面板中不起作用

javascript - 如何在 socket io 中向单个客户端发送错误数据包?

javascript - meteor 如何处理大量对较大文档的订阅?

javascript - 如何阻止 socket.io 多次发射

ios - SocketIOClient-Swift : Unable to authenticate socket server