SignalR:为什么选择集线器而不是持久连接? [英] SignalR: Why choose Hub vs. Persistent Connection?

查看:11
本文介绍了SignalR:为什么选择集线器而不是持久连接?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近一直在SignalR上搜索和阅读,虽然我看到了很多关于集线器和持久连接之间的区别的解释,但我无法理解下一个层次,这就是为什么我会选择一种方法而不是另一种方法?

推荐答案

根据我在Connection and Hubs section中看到的,集线器似乎提供了覆盖较低级别持久连接的主题系统。

来自下面投票较高的评论:

部分正确。您还可以在持久连接中获取主题或组。最大的区别在于发送不同类型的消息。例如,您有不同类型的消息,并且希望发送不同类型的有效负载。对于持久连接,您必须将消息类型嵌入到有效负载中(请参阅原始示例),但是集线器使您能够通过连接执行RPC(允许您从服务器调用客户端上的方法,并从服务器调用到客户端)。另一件大事是模型绑定。集线器允许您将强类型参数传递给方法。

文档中使用的示例使用聊天室比喻,在聊天室中,用户可以加入特定的房间,然后只能收到来自同一房间的其他用户的消息。更一般地,您的代码订阅一个主题,然后只获取发布到该主题的消息。使用持久连接,您将获得所有消息。

您可以很容易地在持久连接的基础上构建您自己的主题系统,但在这种情况下,SignalR团队已经为您完成了工作。

这篇关于SignalR:为什么选择集线器而不是持久连接?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆