【发布时间】:2015-11-21 04:23:42
【问题描述】:
我的系统由
组成- SignalR 服务器
- 多个 C# 客户端连接到所述 SignalR 服务器。
据我了解,一旦连接,这些客户端中的每一个都会有自己的关联ConnectionId。
现在,我想实施一种弹性策略,在 SignalR 服务器重新启动后,它仍应保留它曾经在集线器中拥有的组和连接。
我正在考虑通过将 Groups 和 ConnectionIds 存储在外部存储(例如数据库)中来实现这一点,并在应用程序启动时恢复它。
当服务器出现故障时,客户端的连接可能已断开。但这可以通过让客户端总是尝试在断开连接时重新连接来缓解。服务器启动后,客户端将重新连接。
但是,这个解决方案感觉很不稳定。特别是,我不确定一旦客户端重新连接它是否会保留相同的ConnectionId。
这种方法有意义吗?有更好的方法吗?
【问题讨论】:
标签: c# asp.net signalr signalr-hub