【问题标题】:Azure SignalR understanding connection countAzure SignalR 了解连接数
【发布时间】:2021-09-07 22:12:54
【问题描述】:

我对 Azure SignalR 连接数有点困惑。当我在 Visual Studio 调试模式下运行 MVC.NET 时,它会立即创建 10 个服务器连接。所以,我仔细查看了文档(https://docs.microsoft.com/en-us/azure/azure-signalr/signalr-concept-messages-and-connections),上面写着

默认情况下,每个应用服务器以每个集线器的五个初始连接开始,每个客户端都有一个客户端连接。

例如,假设您有两个应用程序服务器并在代码中定义了五个集线器。服务器连接数将为 50:2 个应用服务器 * 5 个集线器 * 每个集线器 5 个连接。

使用上面的公式,我应该只有 5 个连接,因为:1 app server * 1 hub * 5 connections per hub = 5 connections。我不明白为什么我的门户显示我有 10 个服务器连接而不是 5 个。

谁能帮助解释 Azure 如何计算服务器连接?

谢谢...


更新

对于那些正在寻找如何启用实时跟踪工具的人:

  1. 转到 SignalR
  2. 单击要跟踪的 SignalR
  3. 点击监控 |诊断设置
  4. 如果您还没有配置日志,请点击“配置日志目标设置”(注意:我认为最便宜的方法是存储在您的存储帐户下,保留 1 天)。
  5. 勾选启用实时跟踪并点击保存
  6. 打开实时跟踪工具(右上角应该显示“已连接”)
  7. 点击捕获
  8. 启动您的应用程序

【问题讨论】:

  • @sam-您能否验证您的代码以确保 ConnectionCount(配置服务选项的一部分)设置为默认值 (5)。请参阅github.com/Azure/azure-signalr/blob/dev/docs/… 我怀疑该值设置为“10”,这就是您看到 10 个服务器连接的原因。
  • 嗨@RajkumarMamidiChettu-MT,我只把它放在Web.config中。这是连接字符串<add name="Azure:SignalR:ConnectionString" connectionString="Endpoint=https://xxxxx.service.signalr.net;AccessKey=xxxxx=;Version=1.0;" />。我没有指定 ConnectionCount。有什么想法吗?

标签: asp.net-mvc azure azure-signalr


【解决方案1】:

转到 Azure 门户 SignalR 服务的“监控”选项卡下的“诊断设置”。 单击“打开实时跟踪工具”按钮。 在新打开的窗口中单击捕获。 当您运行应用程序时,所有连接都将显示在 Live Trace 中。

【讨论】:

  • 嗨 Hovsep,当我调用 app.MapAzureSignalR("1_TestWebsite") 时,它实际上创建了集线器 1_testwebsite。有什么想法可以防止创建1_testwebsite 集线器吗?我只需要使用集线器类定义的testnotifyhubpublic class TestNotifyHub : Hub
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 2015-06-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多