当SignalR一次建立8-10个连接时,实时聊天不起作用

我正在使用SignalR开发实时聊天。 这是很棒的图书馆。 但我应对了一个我无法解决的问题。 因此,当signalR一次进行8-10个连接时,实时聊天不再起作用。 也许是b / ci在本地机器上运行一切?

我想也许我在某个地方犯了错误。 所以我找到了最简单的聊天。 你可以在这里下载。 我在10个窗口打开它,它不再工作了。 signalR或程序员的性能问题是错误的吗? 我怎样才能让它更快地运作?

我也找到了JabbR聊天 。 它有现场演示 ,适用于很多人。 他们没有做任何特别的事情,它的工作量很大。

有人可以帮忙解决这个问题吗?

非常感谢任何帮助,迪马。

您可能遇到两个问题:

  1. Windows 7上的IIS / Cassini 默认限制为10个并发连接 。 尝试在Windows Server上运行测试,看看它是否表现相同。
  2. 尝试在单独的浏览器窗口和/或单独的浏览器和/或机器中打开连接, 而不是选项卡 。 我注意到在使用标签时,0.4内容会变得很糟糕。

找到了解决方法:

重写connectionId,所以在每个标签中你都有相同的sonnection id:

public class MyConnectionFactory : IConnectionIdGenerator { public string GenerateConnectionId(IRequest request) { return MyUserManager.Instance.CurrentUserID.ToString(); } } 

添加到global.asax:

 GlobalHost.DependencyResolver.Register(typeof(IConnectionIdGenerator), () => new MyConnectionFactory()); 

我尽可能地打开了马赫标签。 所有标签都会收到通知。

希望,这有帮助。