2

SignalR 中的大量组对性能有多大影响?例如,以一个有帖子的社交网络为例,对需要通过 SignalR 中心更新的帖子进行评论。最好为每个帖子创建一个组,然后将评论更新发送到该组,将评论更新发送给所有客户端,然后让客户端代码决定是否更新,或者是还有另一种我想念的方式吗?谢谢!

4

1 回答 1

3

当您通过 SignalR 向客户端广播消息时,该消息会转到一个主题,然后该主题会被推送到订阅该主题的客户端/客户端。每个连接的客户端都有一个主题,每个组都有自己的主题。

发送给一个组(与它关联的用户超过 1 个)总是比发送给单个用户更快。但是,组确实会占用内存。单个组的内存远不及整个用户的内存量,但如果创建过多,您会看到损失。

因此,您的问题的答案是,这取决于。根据您的应用程序的规模和实现,您可以使许多组工作或不工作。

例如,几个人对一个帖子发表评论的情况肯定会证明一个小组是合理的,而一个人在他们的墙上发表评论为 0 的情况则不会。

希望这可以帮助!

于 2013-01-23T05:43:53.620 回答