gpt4 book ai didi

c# - SignalR 客户端每两秒重新连接到集线器

转载 作者:行者123 更新时间:2023-11-30 16:20:11 26 4
gpt4 key购买 nike

我的客户端每两秒重新连接一次到 SignalR 集线器。我想知道这是有意为之还是我的错误。

  • SignalR 版本:1.0.0-rc2
  • 在 Windows Azure 自托管中托管 SignalR Hub/无 iis(也无服务总线等)
  • 本地主机上的相同行为
  • 我已将心跳间隔设置为 1 分钟,没有更改。还尝试了保持事件/连接超时。

客户:

var connection = new HubConnection("http://xyz.cloudapp.net/push");
connection.Start().Wait();

服务器:

var listenUrl = "http://xyz.cloudapp.net/push";
WebApplication.Start<Startup>(listenUrl );


Fiddler-屏幕截图 Fiddler-Screenshot

Higher Resolution



日志(客户端、StateChanged 事件/HubConnection):

16:20:48 State Changed: Disconnected -> Connecting
16:20:52 State Changed: Connecting -> Connected
16:20:53 State Changed: Connected -> Reconnecting
16:20:53 State Changed: Reconnecting -> Connected
16:20:55 State Changed: Connected -> Reconnecting
16:20:55 State Changed: Reconnecting -> Connected
[...]



<罢工>问题 1:我该如何避免每个客户端因重新连接而每两秒调用一次我的服务器?

问题2:如何获取有关重新连接“问题”的信息?有没有办法获取一些内部日志?

编辑1:我已将传输更改为长轮询:

connection.Start(new LongPollingTransport()).Wait();

我发现默认情况下使用长轮询和服务器发送事件。当我只使用长轮询作为传输时,重新连接不会每 2 秒发生一次(现在大约每分钟一次)。但配置值(heartbeart 等)也没有被使用。

问题3如何设置长轮询传输的重新连接时间?我找到了一个属性 ReconnectDelay,但这似乎不是正确的。

最佳答案

都是我的错。

我尝试用一​​个新的独立项目重现“问题”。我发现我的服务器应用程序正在使用旧的和过时的 SignalR 库。更新到最新后就完美运行了。大卫,感谢您的帮助。

关于c# - SignalR 客户端每两秒重新连接到集线器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14548923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com