基于事务驱动架构建筑微任事第19个别:应用 SignalR 和 Azure Active Directory 建筑和庇护及时通讯

发布时间: 2022-11-28 12:24:01  来源:华体会平台官网app 作者:华体会平台下载 

  下令 HTTP API 将变乱存储到变乱存储,但不直接将它们颁发到 Kafka 任职总线。能够研讨这种情状,但我不期望下令 API 也充任坐蓐者。

  下令 HTTP API 将从post/put/delete恳求中吸收的数据转换为变乱,并将这些变乱存储到变乱存储中

  订阅 SignalR 组的坐蓐者任职吸收通告,然后将变乱颁发到 Kafka 任职总线

  订阅 Kafka 任职总线的操纵者从 Kafka 任职总线吸收变乱,然后修筑一个读取模子并将其存储到非 SQL 数据库(Elasticsearch)并向 SignalR 组发送通告

  前端 SPA 会收到 Elasticsearch 索引已更新的通告,然后改良视图。

  即使架构的某个部门呈现滞碍(SignalR Hub、Kafka、database、API)会爆发什么?咱们将正在从此的教程中看到它。

  Azure Active Directory B2C 供给企业到客户的标识即任职。客户操纵其首选的社交、企业或当地帐户标识来获取对运用次第和 API 的简单登录探访权限。

  Azure AD B2C 是独立于 Azure Active Directory (Azure AD) 的任职。它基于与 Azure AD 无其余身手修筑,但用处分别 - 应允企业修筑面向客户的运用次第,然后应允任何人注册这些运用次第,而对用户帐户没有范围。

  要修筑 SignalR Hub ,您该当界说一个从 Hub 承担的类,如下所示:

  要向全部相连的客户端发送信息,您该当操纵SendMessage功效并吸收信息,相连的客户端应侦听吸收信息

  SendMessage和ReisterMessage行为字符串操纵和挪用,于是我不会以无其余格式接连,而是操纵强类型的格式

  我创筑了一个 ISignalRNotifier 接口来劈头客户端相连,中断相连并收听信息

  是以,为了侦听和处剃发送到中央的信息,我注册了一个统治次第,当调东西有指定举措名称的中央举措时,将挪用该统治次第:nameof(IHubNotifier .OnPublish)

  要将信息颁发到 hub,我该当操纵 ISignalRPublisher 接口。即使断开相连的客户端考试向中央发送信息,正在发送信息之前会自愿相连它

  转到租户并单击运用注册并相应地填写表单:供给运用次第名称、帮帮的帐户类型。正在这里,我不需求重定向URI,由于它是一个Web api。

  翻开 startup.cs 类并增加以下实质以注册身份验证任职所需的任职,并操纵 Microsoft 标识平台保卫hub