Azure SignalR:无连接时组是否存在?REST接口返回200的疑问
Azure SignalR 组相关问题解答
1. Azure SignalR组是否可在无客户端连接的情况下存在?
Azure SignalR的组可以在无客户端连接的情况下存在。组是独立的逻辑标识,不需要依赖活跃客户端连接来维持。你可以通过服务端API(如REST接口、SDK方法)创建组、向组发送消息,哪怕组内没有任何在线客户端,组的标识依然会被保留,直到你主动调用删除组的接口,或者服务端触发特定的资源清理机制(默认不会自动删除空组)。
2. 当Azure门户中的服务实时指标显示客户端连接数为0时,REST接口GET /api/v1/hubs/{hub}/groups/{group}为何仍返回200 OK?
这是因为Azure SignalR的组是独立于客户端连接的逻辑实体:
- 只要该组曾经被创建过(比如通过服务端API创建、或曾经有客户端加入过),即使当前没有任何客户端连接,组的记录依然保存在服务的元数据中。
- 调用
GET /api/v1/hubs/{hub}/groups/{group}接口时,服务端仅校验该组是否存在于元数据中,而非检查组内是否有活跃客户端。因此只要组存在就返回200 OK,只有组从未被创建过才会返回404 Not Found。
内容的提问来源于stack exchange,提问作者Linas
相关产品推荐
相关产品推荐

