没有订阅者的发布者
Publisher with no subscribers
假设情况,发布者发布消息,但没有人可以处理它。我能够弄清楚的是,该消息将变成黑洞。
对于只有一个订阅者的发布者有一个 SO post,答案是发送消息而不是发布消息。我明白了。
我更担心的是,如果我发布的内容本应由某些订阅者处理,但由于某种原因全部关闭(发布失败?天灾?我不知道)
很酷的是,一旦订阅者订阅了,在发布消息时它是否崩溃和停止并不重要,因为事件只会排队在订阅者的输入队列中。
你看,发布者有一个 "subscription storage",这是存储订阅的地方。它可以是数据库、JSON 文件,或者如果传输支持它(例如 RabbitMQ 和 Azure 服务总线),订阅存储内置在传输中 (*)。
这意味着发布者可以在订阅者来来去去时发布任意数量的事件,但只要他们不取消订阅,那么最终就会收到所有事件。
*) 以执行适当 publish/subscribe 消息传递的能力的形式。
假设情况,发布者发布消息,但没有人可以处理它。我能够弄清楚的是,该消息将变成黑洞。
对于只有一个订阅者的发布者有一个 SO post,答案是发送消息而不是发布消息。我明白了。
我更担心的是,如果我发布的内容本应由某些订阅者处理,但由于某种原因全部关闭(发布失败?天灾?我不知道)
很酷的是,一旦订阅者订阅了,在发布消息时它是否崩溃和停止并不重要,因为事件只会排队在订阅者的输入队列中。
你看,发布者有一个 "subscription storage",这是存储订阅的地方。它可以是数据库、JSON 文件,或者如果传输支持它(例如 RabbitMQ 和 Azure 服务总线),订阅存储内置在传输中 (*)。
这意味着发布者可以在订阅者来来去去时发布任意数量的事件,但只要他们不取消订阅,那么最终就会收到所有事件。
*) 以执行适当 publish/subscribe 消息传递的能力的形式。