[英]When we should use SignalR self hosted and when we should not?
我正处于在项目中使用SignalR的阶段,我不知道何时使用自我托管选项以及何时不应该使用。 例如,如果我愿意将我的Web应用程序托管在服务器场中,
如果我们想向每个客户端广播消息,这在SignalR中是如何工作的
在多个实例中运行SignalR的想法是,连接到实例A的客户端无法从连接到实例B的客户端获取消息。
( SignalR横向扩展文档 )
但是,向外扩展时,客户端可以路由到其他服务器。 连接到一台服务器的客户端将不会收到从另一台服务器发送的消息。
解决方案是使用backplane
-每当服务器接收到一条消息时,它将转发到所有其他服务器。 您可以使用Azure Service Bus , Redis或SQL进行此操作 。
我的看法是,当您不希望完整的IIS运行(因为您进行了一些轻量级的操作不需要全部IIS重载)或根本不希望使用Web服务器时,可以使用self host选项。例如,您想将实时功能添加到已经存在的表单应用程序中,或通过任何其他过程添加)。
确保阅读自托管SignalR的文档,并确定是否实际需要自托管SignalR。
如果您要在IIS下开发Web应用程序,则我看不出您为什么要自托管SignalR的任何原因。
希望这可以帮助。 祝你好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.