在本地 IIS 下运行是不是会限制 Signalr 连接的数量

Posted

技术标签:

【中文标题】在本地 IIS 下运行是不是会限制 Signalr 连接的数量【英文标题】:Does running under local IIS limit the number of Signalr connections在本地 IIS 下运行是否会限制 Signalr 连接的数量 【发布时间】:2015-06-26 13:38:31 【问题描述】:

我正在测试我的 MVC Web 应用程序。

它使用 SignalR。

我在本地 IIS 下运行它

为了测试我的网络客户端,我在 Chrome 浏览器中导航到我的页面,然后在不同的选项卡中打开同一个网页。

我最多可以打开 2 个标签。

如果我现在关闭其中一个选项卡并在另一台 PC 上打开同一页面,它将无法打开。我正在这台 PC 上使用 Safari 浏览器。

如果我关闭我的第一台电脑上的其他浏览器,如果将连接。

然而,如果我在我的托管服务器上运行相同的代码,我可以拥有许多客户端连接。

我可以在本地 IIS 服务器下运行的客户端连接数量是否受到限制,或者我需要在某处进行设置?

谢谢

PS 我可以发布相关代码,但我认为代码不是问题所在。我认为它必须是配置。

【问题讨论】:

【参考方案1】:

您可以达到两个限制 - 服务器端的限制和浏览器端的限制。这是一个包含服务器端限制的blog post。如您所见,限制取决于操作系统版本和 IIS 版本。您可以在此*** thread 中找到浏览器限制。请注意,客户端可以打开多个并发请求(例如,在长轮询的情况下,轮询请求几乎总是处于活动状态,并且数据在单独的请求中发送)。

【讨论】:

好吧,如果你运行的是 Windows 8(基本版),博客上说限制是 3 个连接。由于 SignalR 可能每个选项卡使用 2 个(例如单个 SignalR 连接),因此无法为第二个选项卡创建另一个 2。打开跟踪并查看一下 - 它可能会让您对真正发生的事情有所了解。 其实这就是答案。我正在使用 Windows 家庭基本版

以上是关于在本地 IIS 下运行是不是会限制 Signalr 连接的数量的主要内容,如果未能解决你的问题,请参考以下文章

SignalR入门

使用SignalR实现消息提醒

允许任何用户在没有凭据的情况下使用 cors 访问“signalr/hubs”(服务器运行 Windows 身份验证)

Windows 10 Home/Pro/Enterprise 上的 IIS 并发请求限制

ASP.NET SignalR - IIS 上处于 AuthorizeRequest 状态的连接过多

关于SignalR连接数量问题的记录