如何在套接字编程中管理大量客户端

问题描述 投票:0回答:2

在示例中,我看到了套接字编程项目(其中大多数是聊天项目),它们通常将所有客户端保存在一个数组中,并且从客户端收到消息后,除了将其保存在数据库中之外,所有客户也都被发送了。我想到的问题是,当客户端数量很大时,如何从客户端接收此消息并将其保存在数据库中并发送给客户端(我的意思是,客户数量如此之大,以致单个服务器无法仅满足他们的需求,并且需要几个服务器来连接套接字。在这种情况下,并非所有客户端都可以通过阵列进行管理。那么,如何将现在存储在另一台服务器上(由另一位客户)的消息传送给该服务器上的客户呢? (速度很重要)。有没有一种方法可以快速了解数据库更改并将其提供给客户? (示例电报)

我正在寻找一个视角,而不是代码

python sockets serversocket
2个回答

0
投票

您应该将数据库用作消息传递中心。让其他服务器通过订阅或按一定时间间隔监视数据库中的更改。显然,订阅将是最快的。

[插入消息后,每个服务器将其接收并发送到其客户端列表。对于广播消息来说,这应该是非常快的。

© www.soinside.com 2019 - 2024. All rights reserved.