当SignalR在同一时间做8-10连接实时聊天不起作用(When SignalR made 8-1

2019-06-24 03:44发布

我正在开发使用SignalR实时聊天。 这是伟大的图书馆。 但我应付了,我不能化解了一段时间的一个问题。 所以,当signalR同时在线聊天做8-10连接问题不能正常工作了。 也许是B / CI运行本地机器上的一切吗?

我想,也许我犯过错误的地方。 所以,我发现最简单的聊天。 您可以下载它在这里 。 我在10个窗口打开它,它不工作了。 是signalR或程序员错误的是性能问题? 我怎样才能使它运行得更快?

此外,我发现JabbR聊天 。 它有现场演示和它的作品了很多人。 他们不作出任何特殊,它极大地工作。

有人可以用这个问题上需要帮助?

十分感谢您的帮助,迪马。

Answer 1:

还有,你可能已经遇到了两个问题:

  1. IIS /卡西尼号上的Windows 7有10个并发连接默认限制 。 试用Windows Server上运行的测试,看看它的表现一样。
  2. 尝试在单独的浏览器窗口和/或单独的浏览器和/或机器,而不是标签打开连接。 我注意到,在0.4的东西可以搞砸使用标签时。


Answer 2:

找到如何解决办法:

重写的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());

我设法打开马赫标签,尽我所能。 和所有标签得到通知。

希望这有助于。



文章来源: When SignalR made 8-10 connections at a time live chat doesn't work