【问题标题】:External Messaging SignalR (DB ==> WebServer)外部消息 SignalR (DB ==> WebServer)
【发布时间】:2021-05-08 21:32:30
【问题描述】:

我们有一个使用 SingalR 的 MVC5 应用程序。该应用程序目前位于负载均衡器后面,我们有一个服务器花园。因此,我们通过 SQL 服务器背板使用横向扩展机制来确保所有节点都获得相同的通知。它运行良好。

与此同时,我们在外部执行了一些操作,需要向我们的服务器发送消息。操作发生在 SQL Server 内部。因此,我正在考虑使用某种计时器来持续监控表格,并且当发生某种情况时,它会广播消息。这可以工作,但计时器需要在 Web 应用程序上发生并不断 ping 数据库进行检查。

感觉不对。有没有替代方案?

SQL 背板是一个黑盒子。最好能在那儿写个记录,让 SignalR 把它带过去..

谢谢,

【问题讨论】:

    标签: asp.net-mvc signalr signalr-backplane


    【解决方案1】:

    我做了类似的事情,但计时器位于 SignalR 处理程序内部,它根据连接到此处理程序集线器的客户端来检查数据库中的特定数据。然后,来自数据库的数据通过 SignalR 发送到客户端,而背板由 SignalR 在内部处理。

    替代解决方案取决于您的具体实施。我想您可以尝试使用触发器而不是计时器来写入 SignalR 消息表,但这很危险。另一种可能性是 SQL 代理在计时器上运行并触发某些程序或脚本。

    来自 SignalR 文档:

    SignalR 管理表格。只要您的应用程序已部署,就不要删除行、修改表等。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-17
      • 1970-01-01
      相关资源
      最近更新 更多