gpt4 book ai didi

websocket - websocket 是否只将数据广播到所有连接的客户端而不是发送到特定客户端?

转载 作者:行者123 更新时间:2023-12-02 22:40:48 25 4
gpt4 key购买 nike

我是 Websockets 新手。在阅读有关 websockets 的内容时,我无法找到一些疑问的答案。我希望有人能澄清一下。

  1. websocket 是否仅将数据广播到所有连接的客户端而不是发送到特定客户端?无论我尝试什么示例(主要是聊天应用程序),它们都会向所有客户端发送数据。可以改变这个吗?

  2. 它如何在位于 NAT(路由器后面)的客户端上工作。

  3. 由于客户端服务器连接始终保持打开状态,因此大量连接会如何影响服务器性能?

  4. 由于我希望所有客户端都能实时更新,因此需要将所有客户端连接到服务器,那么我该如何处理客户端连接限制?

注意:- 我的客户端不是 Web 浏览器,而是桌面应用程序。

最佳答案

  1. 不,websocket 不仅仅用于广播。您向特定客户端发送消息,当您广播时,您只需向所有连接的客户端发送相同的消息,但您可以向不同的客户端发送不同的消息,例如游戏 session 。

  2. 客户端连接到服务器并初始化连接,因此 NAT 不是问题。

  3. 使用可扩展的服务器是很好的,例如不为每个连接使用单独线程的事件驱动服务器(例如 Node.js),或者具有轻量级进程的 erlang 服务器(游戏服务器的不错选择)。

  4. 如果您使用良好的服务器操作系统(例如 Linux),这应该不是问题,但如果您的服务器使用桌面版本的 Windows,这可能会成为一个限制(例如,可能限制为 200 个连接)。

关于websocket - websocket 是否只将数据广播到所有连接的客户端而不是发送到特定客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13967051/

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