围绕 Azure EventGrid 主题和事件的最佳实践是什么?
将不同的事件类型发布到同一 Azure EventGrid 主题是不是一个坏主意?
例如多个不同的领域事件
我们什么时候需要不同的主题?
整个应用程序的单个共享主题?
每种聚合根类型一个主题?
每种事件类型一个主题?
欢迎任何建议,因为没有明确的答案
Part2.
如果我想与各种 Azure 逻辑应用集成该怎么办?
如果多个逻辑应用程序对同一主题做出反应,它们会互相窃取消息吗?
每个逻辑应用是否都会创建一些不可见的订阅?
不,将不同的事件类型发布到同一 Azure EventGrid 主题并不是一个坏主意:如果事件与同一资源相关,则将它们发布到同一 EventGrid 主题确实有意义。以 HR 应用程序为例,您可以在同一“员工”主题上发布 EmployeeAdded 和 EmployeeRemoved 事件。
关于何时需要不同主题的问题,我认为这取决于几个因素,例如您如何对应用程序中的资源进行建模、这些资源上感兴趣的事件、系统的哪些部分应该能够实现的安全模型发布到主题/创建该主题的事件订阅。理想情况下,同一资源类型(例如上例中的“员工”资源类型)的所有类型的事件可以位于同一主题。当您的系统有更多类型的资源时,您可能需要为每种资源创建单独的主题。此外,还必须考虑所需的安全模型(例如,假设您想要限制谁可以接收某些类型的事件)。
关于逻辑应用程序的问题,如果您创建多个处理来自同一主题的事件的逻辑应用程序,则每个逻辑应用程序都会创建同一主题的事件订阅,并且事件网格会将该主题的事件传递到each的事件订阅。因此,每个逻辑应用程序将单独接收相同的事件,并且可以独立于其他应用程序对其进行处理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)