SignalR 需要很长时间才能响应心跳

SignalR takes a long time to respond to a heartbeat

我创建了一个非常简单的 ASP.NET 核心应用程序和 SignalR Visual Studio 使用具有以下自定义的 Web 应用程序 MVC 应用程序模板:

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapHub<MyHub>("hub/remote");
                // ... MVC router definitions
            }
const connection =
    new signalR.HubConnectionBuilder()
        .withUrl("/hub/remote")
        .configureLogging(signalR.LogLevel.Trace)
        .withAutomaticReconnect()
        .build();

connection.start().then(() => console.log("Connected."));

然后我启动了 MVC 应用程序,一切都开始了,没有出现错误。 但是,我仔细查看了 SignalR 日志消息:

我相信这是使连接保持活动状态的 SignalR 的内部心跳。 我想知道为什么从发送消息到收到响应需要4-5秒?

我还尝试在更复杂的应用程序中使用 SignalR,有时我什至开始收到“重新连接”事件,因为那里的负载明显更大。

这让我觉得我在配置连接时做错了什么,但不知道具体是什么。

“连接缓慢”不是 ASP.NET Core SignalR 中的事件。

心跳之间没有直接关系,因此客户端和服务器 ping 之间的差距是正常的。