繁体   English   中英

ASP.NET Core App中的Azure SignalR服务

[英]Azure SignalR Service in ASP.NET Core App

我正在阅读有关Azure SignalR服务的非常有限的信息以及快速入门指南,并希望确保我正确理解了这一点。

我们似乎仍然有一个hub ,如果我正确理解这一点,则Azure SignalR服务的功能就是将消息简单地推送到已连接的客户端。

就我而言,我存储了聊天记录,因此通过首先点击该hub ,我仍然可以使用后端逻辑来保留聊天记录或执行我可能需要的任何其他处理。 然后只需允许Azure SignalR服务将数据推送到连接的客户端。

主要好处似乎是处理服务的扩展。

我说对了吗?

是的,您完全正确。

您将使用与ASP.NET Core SignalR完全相同的API来编写业务逻辑,这意味着当来自客户端的消息到达集线器时,您可以保留所需的任何内容。

Azure SignalR服务将成为您的应用程序服务器和连接的客户端之间的基础传输。 例如,当您要将消息广播给所有客户端时,实际上您只向Azure SignalR服务发送了一条消息,该服务将为您广播消息给所有客户端。 这样您就不必担心横向扩展。 Azure SignalR服务将为您处理横向扩展。

您理解正确。

SignalR尚未准备好进行生产(当谈到ASP.NET Core时),用于ASP.NET MVC的SignalR已经存在了一段时间(稳定)。

SignalR由两部分组成:服务器和客户端。 服务器就像您描述的那样:一个“集线器”,可用于将信息推送到客户端。

在网页上,您加载了一段生成的JavaScript(根据您的集线器定义自动生成)。 基本上,您是让网站访问者(客户端)通过signalR的机制连接到集线器(signalR将根据浏览器选择正确的连接方式),然后“订阅”您在集线器中使用的不同方法。

工作原理很简单:只要您在集线器中调用代码(可以从客户端或从后端代码),就会自动为您处理所有订阅的客户端的通信。

注意:如果您正在azure Web应用程序上运行此应用程序:启用“始终在线”设置,并将“ websockets”切换设置为“启用”,否则您会看到奇怪的行为。

注意2:signalR core 1.0的RC版本刚刚发布(2018年5月7日),因此可能需要一段时间才能使该软件开始变得稳定并可以通过公共nuget / npm渠道使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM