gpt4 book ai didi

azure-eventgrid - 当有多个订阅者时,Azure 事件网格如何处理失败?

转载 作者:行者123 更新时间:2023-12-02 06:27:23 26 4
gpt4 key购买 nike

事件网格的文档说明它有一个 delivery and retry mechanism内置,并给出了一个例子,说明什么可以归类为成功或失败的尝试。文档非常清楚地说明了单个事件处理程序会发生什么。

我的问题是,如果有多个事件处理程序,并且只有一个处理程序未能接收到事件,会发生什么?事件是仅针对该处理程序重试,还是所有处理程序都会看到重试?

最佳答案

基本上,Azure 事件网格事件发布/订阅模型可以处理两种消息/中介模式,例如 扇入 图案和 扇出 (广播)模式。以下屏幕片段显示了它们的区别:

enter image description here

enter image description here

事件源和事件接收器之间的逻辑连接由订阅描述,它基本上是 Pub/Sub 模型的元数据工件。每个逻辑连接(由订阅表示)都是独立的,并且与其他逻辑连接松散地解耦。换句话说,每个订阅者在这个 Pub/Sub 模型中只能处理一个逻辑连接,例如只有一个事件源。

您的问题与扇出(广播)模式有关,其中事件兴趣使用 PushWithAck 交付模式向多个订阅者广播。这个扇出模式中的每个订阅都有自己的“消息状态传递机”,由订阅者声明,例如重试选项、死信、过滤等。

换句话说,向订阅者的事件传递是基于他们的订阅以透明的方式并行处理的,彼此之间没有任何依赖关系。请注意,订阅者没有任何关于谁、在哪里、如何等将事件传递给其他人一次的任何信息,因此每个订阅者只能看到自己的传递状态,例如,Aeg-Delivery-Count 的值显示状态机的重试计数器。

因此,在向多个订阅者之一发送失败事件的情况下,启用的重试过程仅针对该订阅者执行。

关于azure-eventgrid - 当有多个订阅者时,Azure 事件网格如何处理失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54316309/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com