【问题标题】:Service Fabric Actors and SignalRService Fabric Actor 和 SignalR
【发布时间】:2016-03-11 11:53:36
【问题描述】:

我希望有人能指出我正确的方向。我在https://azure.microsoft.com/en-us/documentation/articles/service-fabric-reliable-actors-pattern-distributed-networks-and-graphs/#smart-cache-code-sample-groupchat 看到了演员的聊天示例,但该示例仅显示了聊天故事的一部分。聊天对我来说是一个很好的例子,因为它与我要解决的问题相似。

对于我的问题,将消息推送到 Actor 网络的客户端也需要在该网络的状态发生变化时接收更新。我相信最明显的工具是 SignalR,但我有点卡在这一点上。 Actor SDK 似乎没有提供一种可靠的方式从 Actor 中流式传输状态更改。从我读到的内容来看,对于这种情况,Actor Events 似乎不够可靠(我猜是这样,因为文档说“尽力而为”)。

以 SF 网站上的聊天为例。我从那里去哪里?如何从 ASP.NET Signalr Hub 订阅 Actor 更新?

【问题讨论】:

  • 我知道这是一个老问题,但我创建了一个库,用于使用 Actor Events 来横向扩展 SignalR。 “尽力而为”并没有打扰我的预期用途!有一个演示、文档和源代码here

标签: azure signalr actor azure-service-fabric


【解决方案1】:

到目前为止,我想出的最佳答案是将 pub/sub 内容从 Service Fabric Actors 移到另一个工具上。例如,对于我的特定问题,我使用 Redis 的 pub/sub 功能。

【讨论】:

    【解决方案2】:

    通常,您希望客户端和参与者之间存在一对一的关系,或者客户与参与者之间存在一对多的关系。话虽如此,我将对其进行设计,以便客户端向参与者发送消息,并且参与者负责确保将消息传递到“会话”(通过提醒)。通过该“会话”的可靠集合,我将会话视为有状态服务。当更新到达会话时,它们会调用 hub 方法将更改广播到相应的客户端。

    【讨论】:

      猜你喜欢
      • 2018-01-11
      • 2015-09-06
      • 2017-01-31
      • 2017-07-19
      • 1970-01-01
      • 2020-04-03
      • 2016-08-12
      • 2023-03-22
      • 2015-11-01
      相关资源
      最近更新 更多