因此,无需轮询服务器,或提交针对更新的新 HTTP 请求,即可更新客户端。

 

【Azure 应用服务】Azure SignalR 是否可以同时支持近十万人在线互动 

Azure SignalR Service 的用途是什么?

需要将数据从服务器实时推送到客户端的任何方案都可以使用 Azure SignalR 服务。

通常需要轮询服务器的传统实时功能也可以使用 Azure SignalR 服务。

下面是适合使用 Azure SignalR 服务的一些示例:

  • 高频率数据更新: 游戏、投票、轮询、竞拍。
  • 仪表板和监视: 公司仪表板、金融市场数据、即时销量更新、多玩家游戏排行榜和 IoT 监视。
  • 聊天: 实时聊天室、聊天机器人、在线客户支持、实时购物助手、信使、游戏内聊天,等等。
  • 地图实时定位: 物流跟踪、交货状态跟踪、运输状态更新、GPS 应用。
  • 实时定向广告: 个性化的实时推送广告和套餐、交互式广告。
  • 协作式应用: 共同著作、白板应用和团队会议软件。
  • 推送通知: 社交网络、电子邮件、游戏、行程通知。
  • 实时广播: 实时音频/视频广播、实时字幕、翻译、活动/新闻广播。
  • IoT 和互联设备: 实时 IoT 指标、远程控制、实时状态和位置跟踪。
  • 自动化: 基于上游事件的实时触发器。

 

问题描述

Azure SignlaR 是否支持十万人同时在线,需要开多少个连接单位?

回答问题

如果是近十万人,那么至少会有十万的客户端连接,所以根据SignalR的文档计算,需要有100个单元。

【Azure 应用服务】Azure SignalR 是否可以同时支持近十万人在线互动

 

注:如果连接数进一步增加,将遭到连接限制。

 

性能因素

理论上,Azure SignalR 服务容量受计算资源的限制:CPU内存网络以下因素会影响入站和出站容量:

  • SKU 层(CPU/内存)

  • 连接数

  • 消息大小

  • 消息发送速率

  • 传输类型(WebSocket、Server-Sent-Event 或 Long-Polling)

  • 用例场景(路由开销)

  • 应用服务器和服务连接(服务器模式)

 

如何评估入站/出站容量或确定哪个层适合特定的用例?

那么,请检查每个层的最大入站和出站带宽。

如:十万)。

推算公式

#出站连接数计算
outboundConnections = outboundBandwidth * sendInterval / messageSize
#入站带宽
inboundBandwidth = inboundConnections * messageSize / sendInterval
#出站带宽
outboundBandwidth = outboundConnections * messageSize / sendInterval
  • 例如,每条消息花费 0.5 秒意味着每秒可发送两条消息。

  • 小于 1,024 字节的小型消息的性能影响与 1,024 字节消息类似。

  • outboundConnections:接收消息的连接数。

  • inboundConnections:发送消息的连接数。

 

 

快速参考表:

回显 单元 1 单元 2 单元 5 单元 10 单元 20 单元 50 单元 100
连接 1,000 2,000 5,000 10,000 20,000 50,000 100,000
入站带宽 2 MBps 4 MBps 10 MBps 20 MBps 40 MBps 100 MBps 200 MBps
出站带宽 2 MBps 4 MBps 10 MBps 20 MBps 40 MBps 100 MBps 200 MBps

 

广播 单元 1 单元 2 单元 5 单元 10 单元 20 单元 50 单元 100
连接 1,000 2,000 5,000 10,000 20,000 50,000 100,000
入站带宽 4 KBps 4 KBps 4 KBps 4 KBps 4 KBps 4 KBps 4 KBps
出站带宽 4 MBps 8 MBps 20 MBps 40 MBps 80 MBps 200 MBps 400 MBps

 

 

参考资料

https://docs.azure.cn/zh-cn/azure-signalr/signalr-overview

https://docs.azure.cn/zh-cn/azure-signalr/signalr-concept-performance#quick-evaluation

 

相关文章:

  • 2021-11-07
  • 2021-08-21
  • 2021-12-07
  • 2021-09-05
  • 2022-01-07
  • 2021-11-10
  • 2021-11-20
  • 2021-05-27
猜你喜欢
  • 2022-01-11
  • 2021-11-20
  • 2021-11-16
  • 2021-06-29
  • 2021-09-25
  • 2021-05-22
  • 2021-06-09
相关资源
相似解决方案