jen*_*007 28 message-queue servicebus azureservicebus azure-eventhub azure-eventgrid
我正在学习消息传递系统,但对这些术语感到困惑。
下面的所有消息传递系统都提供了具有不同功能集的服务之间的松散耦合。
queue - FIFO,拉动机制,每个队列有 1 个消费者,但有任意数量的生产者?
message bus- 发布/订阅模型,任意数量的消费者和任意数量的生产者处理消息?是Azure Service Bus的实现message bus?
event bus - 发布/订阅模型,任意数量的消费者和任意数量的生产者处理事件?
就术语而言,人们是否可以互换使用message bus和event bus?
事件和消息有什么区别?在这种情况下,这些只是同义词吗?
event hub- 发布/订阅模型,分区,重放,消费者可以将事件存储在外部存储中或接近实时数据分析。究竟什么是事件中心?
event grid- 它可以用作事件中心的下游服务。它究竟做了哪些event hub没有做的事情?
有人可以提供一些历史背景,说明每种技术如何演变为另一种技术,每种技术都与一些实际用例相关联吗?
我发现消息总线与消息队列有帮助
Ith*_*har 41
即使所有这些服务都处理从源到目标的数据传输,并且可能看起来很相似,属于它们在意图上有所不同的伞形消息传递服务。
对于外部发布者或接收者来说,服务总线和事件中心看起来非常相似,这就是很难理解两者之间的区别以及何时使用什么的原因。
使用这个宽松的一般经验法则。
出事了——甚至是集线器
做点什么或给我点东西——服务总线
正如@Louie Almeda 所说,您可能会发现此官方 Azure 文档的链接很有用。
Lou*_*eda 13
我发现Azure 文档中的这种比较非常有帮助。这是事件和消息之间的主要区别。
事件与消息服务
需要注意传递事件的服务和传递消息的服务之间的重要区别。
事件
事件是条件或状态更改的轻量级通知。事件的发布者对事件的处理方式没有期望。事件的消费者决定如何处理通知。事件可以是离散单元或系列的一部分。
离散事件报告状态变化并且是可操作的。要进行下一步,消费者只需要知道发生了一些事情。事件数据有关于发生了什么的信息,但没有触发事件的数据。例如,事件通知消费者文件已创建。它可能有关于文件的一般信息,但它没有文件本身。离散事件非常适合需要扩展的无服务器解决方案。
系列事件报告一个条件并且是可分析的。事件按时间顺序排列且相互关联。消费者需要按顺序排列的一系列事件来分析发生了什么。
信息
消息是服务产生的原始数据,用于消费或存储在其他地方。消息包含触发消息管道的数据。消息的发布者对消费者如何处理消息有预期。双方之间存在合同。例如,发布者发送带有原始数据的消息,并期望消费者根据该数据创建一个文件,并在工作完成后发送响应。
还讨论了这些不同服务的比较,所以一定要检查一下。
| 归档时间: |
|
| 查看次数: |
14748 次 |
| 最近记录: |