1

有没有办法检测 signaR 集线器是否无法连接到给定的背板(SQL 或 REDIS)。例如,给定一个错误的连接字符串或无法访问背板服务器?

这是我的简化启动类:

public class Startup
{

public void Configuration(IAppBuilder app)
{
    var backplaneType = ConfigurationManager.AppSettings["SignalR.BackplaneType"];

    if (backplaneType == "SQL")
    {
        var connectionString = ConfigurationManager.ConnectionStrings["SignalR.SQL"].ConnectionString;
        var sqlScaleoutConfig = new SqlScaleoutConfiguration(connectionString);
        GlobalHost.DependencyResolver.UseSqlServer(sqlScaleoutConfig);

    }
    else if(backplaneType == "Redis")
    {
        var connectionString = ConfigurationManager.ConnectionStrings["SignalR.Redis"].ConnectionString;
        var config = new RedisScaleoutConfiguration(connectionString, "SomeKey");
        GlobalHost.DependencyResolver.UseRedis(config);
    }

    app.MapSignalR();
}
}

这样我们就可以记录任何错误并在我们的 APM 软件中记录下来。

4

0 回答 0