signalr serverSentEvents对某些用户失败,但对其他用户无效

signalr serverSentEvents对某些用户失败,但对其他用户无效,signalr,Signalr,我们部署到一个本地开发服务器,一些用户(不是所有用户)遇到了一个信号器问题,其中serverSentEvents无法连接,它会返回到长轮询。。。正常情况下,这很好,但需要5秒钟才能恢复,用户体验非常糟糕 该请求在chrome的开发者工具网络选项卡中的状态为“已取消”,我们最终使用Signal的longPolling连接。以下是信号员的日志: [16:09:28 GMT-0500 (Eastern Standard Time)] SignalR: Client subscribed to hub

我们部署到一个本地开发服务器,一些用户(不是所有用户)遇到了一个信号器问题,其中serverSentEvents无法连接,它会返回到长轮询。。。正常情况下,这很好,但需要5秒钟才能恢复,用户体验非常糟糕

该请求在chrome的开发者工具网络选项卡中的状态为“已取消”,我们最终使用Signal的longPolling连接。以下是信号员的日志:

[16:09:28 GMT-0500 (Eastern Standard Time)] SignalR: Client subscribed to hub 'chat'. jquery.signalR-2.0.0.js:75
[16:09:28 GMT-0500 (Eastern Standard Time)] SignalR: Negotiating with '/signalr/negotiate?connectionData=%5B%7B%22name%22%3A%22chat%22%7D%5D&clientProtocol=1.3'. jquery.signalR-2.0.0.js:75
[16:09:28 GMT-0500 (Eastern Standard Time)] SignalR: Attempting to connect to SSE endpoint 'http://mysubdomain.mydomain.com/signalr/connect?transport=serverSentEvents&con…bYUr2xEEBuw%3D%3D&connectionData=%5B%7B%22name%22%3A%22chat%22%7D%5D&tid=6'. jquery.signalR-2.0.0.js:75
[16:09:33 GMT-0500 (Eastern Standard Time)] SignalR: serverSentEvents timed out when trying to connect. jquery.signalR-2.0.0.js:75
[16:09:33 GMT-0500 (Eastern Standard Time)] SignalR: EventSource calling close(). jquery.signalR-2.0.0.js:75
[16:09:33 GMT-0500 (Eastern Standard Time)] SignalR: This browser supports SSE, skipping Forever Frame. jquery.signalR-2.0.0.js:75
[16:09:33 GMT-0500 (Eastern Standard Time)] SignalR: Opening long polling request to 'http://mysubdomain.mydomain.com/signalr/connect?transport=longPolling&connecti…bYUr2xEEBuw%3D%3D&connectionData=%5B%7B%22name%22%3A%22chat%22%7D%5D&tid=2'. jquery.signalR-2.0.0.js:75
[16:09:33 GMT-0500 (Eastern Standard Time)] SignalR: Long poll complete. jquery.signalR-2.0.0.js:75
[16:09:33 GMT-0500 (Eastern Standard Time)] SignalR: LongPolling connected.
一旦客户端最终通过长轮询连接,站点就可以正常工作,但我仍然需要找出serverSentEvents不工作的原因

我可以禁用serverSentEvents来解决这个问题,但它对某些人有效,而对其他人无效,所以我想知道是否有办法找出为什么它对某些人无效而对其他人无效


有没有关于如何诊断的建议

从服务器发送的事件传输回退需要5秒钟,因为这是Signal的默认TransportConnectTimeout。此时间跨度可通过应用程序启动时的
GlobalHost.Configuration.TransportConnectTimeout
缩短


苏格兰和南方能源公司可能失败的原因有很多。例如,您的SignalR服务器和客户端之间可能有一个路由器或防火墙,它正在合并或关闭服务器发送事件传输所依赖的分块HTTP响应。当我只知道连接超时时,很难确定SSE问题的确切原因是什么。

感谢TransportConnectTimeout的提示。不过,我真的在寻找关于如何诊断超时的建议。有什么想法吗?