gpt4 book ai didi

angularjs - Socket.io 是聊天模块的理想选择吗

转载 作者:行者123 更新时间:2023-12-03 11:57:52 24 4
gpt4 key购买 nike

我正在处理 AngularjsNode.js基于应用程序。这是一个基于组织的应用程序。在这个应用程序中,我必须实现聊天功能。所以众所周知Socket.io是即时通讯应用程序及其可靠性的最佳解决方案。但除此之外,我对 Socket.io 几乎没有任何疑问。据我了解,当我们使用套接字编程(在我的情况下为 Socket.io)时,它为每个连接保留一个端口。如果组织的规模太大怎么办?它会起作用吗?在服务器端,我使用 Express js .将Socket.io在服务器上创建额外的负载?

我应该选择 Socket.ioHTTP ?

谢谢。

最佳答案

任何类型的交互时间的 HTTP 轮询都是非常低效的。您将有数以万计的客户反复询问您的服务器,“您有什么新东西要给我吗?”并且服务器定期响应“不,还没有”。

webSockets(socket.io 用作传输)的发明正是因为它们比 HTTP 轮询两种方式更有效,交互式通信。

现代服务器可以配置为同时处理数十万个 webSocket 连接。在您的应用程序的实际工作中,您的一台服务器实际上可以处理多少个服务器取决于许多因素,您在问题中都没有透露这些因素。但是,对于双向聊天来说,选择 webSocket/socket.io 并不是一个糟糕的架构选择——这就是发明这种应用程序的目的,因为在这种事情上它通常比 HTTP 轮询更好。

请参阅这些引用资料:

What are the pitfalls of using Websockets in place of RESTful HTTP?

Ajax vs Socket.io

Can this technology stack scale?

Do HTML WebSockets maintain an open connection for each client? Does this scale?

600k concurrent websocket connections on AWS using Node.js

Node.js w/1M concurrent connections!

HTML5 WebSocket: A Quantum Leap in Scalability for the Web

关于angularjs - Socket.io 是聊天模块的理想选择吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43222332/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com