【问题标题】:SignalR SQL backplane not starting in Pre-ProductionSignalR SQL 背板未在预生产中启动
【发布时间】:2015-07-18 20:05:50
【问题描述】:

3 天后,这个问题让我头疼。

SignalR 没有在我的预生产环境中创建其背板 SQL 架构和表,其中包含单个 SQL 服务器 + 负载平衡的 Web 服务器。

我已经检查过了

  • WebSockets 安装在 IIS 中
  • 数据库访问允许表和模式 创作
  • .Net 4.5 已安装并正在使用中
  • 推荐的更新是 已安装
  • here 列出的步骤已完成(除了从 Visual Studio 进行部署 - 我使用 MSBUILD 打包然后使用 WebDeploy)

我已经支持 SignalR 跟踪。只有我的跟踪条目被写入 - SignalR 没有任何内容。

如果我在发布模式下构建,一切都在我的开发环境中正常工作(包括跟踪)。

这是我的跟踪增强启动过程

//Step 1: Check tracing works
var trace = GlobalHost.TraceManager["TestTrace"];
trace.TraceInformation("Preparing to start SignalR");

//Step 2: Check DB access rights
var connectionString = ConfigurationManager.ConnectionStrings["SignalR"].ConnectionString;
var schema = Guid.NewGuid().ToString("N");
using (var sqlConn = new System.Data.SqlClient.SqlConnection(connectionString))
{
    using (var sqlCmd = new System.Data.SqlClient.SqlCommand())
    {
        sqlConn.Open();
        sqlCmd.Connection = sqlConn;
        sqlCmd.CommandText = String.Format("CREATE SCHEMA [{0}]", schema);
        sqlCmd.ExecuteNonQuery();
        sqlCmd.CommandText = String.Format("SELECT '{0}' AS [Value] INTO [{1}].[ConnectionString]", connectionString, schema);
        sqlCmd.ExecuteNonQuery();
    }
}

//Step 3: Initialise SignalR
GlobalHost.DependencyResolver.UseSqlServer(connectionString);
app.MapSignalR(); //This is meant to trigger lots of logging.

//Step 4: Confirm we've successfully passed SignalR start-up
trace.TraceInformation("Finished starting SignalR");

任何帮助都会很棒。干杯。

【问题讨论】:

    标签: asp.net sql-server signalr release signalr-backplane


    【解决方案1】:

    问题不在于服务器端 SignalR,而在于客户端 JavaScript 的启动例程在连接到 SignalR Hub 之前中止。

    似乎 SignalR 在建立第一个连接之前不会开始记录。

    由于某种原因(尚未确定),SignalR 启动例程正在开发环境中完成,并在预生产代码中中止。一个可能的原因是使用压缩 JavaScript 时启动事件的顺序不同。

    【讨论】:

    • 我修复了客户端 JavaScript 中的 JavaScript 错误(我自己造成的)。一旦解决了这个问题,SignalR 启动代码就会完美执行。
    猜你喜欢
    • 2016-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多