SignalR中有大量组导致性能影响有多大?例如,采用有帖子的社交网络,以及需要通过SignalR中心更新的帖子的评论。为每个帖子创建一个组是否更好,然后将评论更新发送到该组,将评论更新发送给所有客户端,然后让客户端代码决定是否更新,或者是还有另一种我失踪的方式吗?谢谢!
答案 0 :(得分:3)
当您通过SignalR向客户端广播消息时,该消息将转到某个主题,然后该主题将被推送到订阅该主题的客户端/客户端。每个连接的客户端都有一个主题,每个组都有自己的主题。
发送给组(具有超过1个与之关联的用户)的速度总是比发送给单个用户更快。但是,组确实会占用内存。单个组的内存远不及整个用户,但如果创建过多,您可以看到收费。
因此,你的问题的答案是,这取决于。根据应用程序的规模和实现,您可以使许多组工作,或者不工作。
例如,有几个人在评论一个帖子的情况肯定会证明一个群体是合理的,而一个人在墙上张贴0条评论的情况则不然。
希望这有帮助!