深入了解Azure Service Bus:功能、开发与安全保障
1. Azure Service Bus实体类型
Azure Service Bus支持三种不同类型的实体,它们在处理通信时提供了不同的选择:
-队列(Queues):是服务中最简单的实体。涉及的概念有:
-生产者(Producer):向队列推送消息的应用程序或服务。
-队列(Queue):消息的容器。
-消费者(Consumer):使用拉取模型从队列读取消息的应用程序或服务。拉取模型意味着生产者需要主动向队列请求接收消息。并且可以有多个生产者和多个消费者,锁持续时间功能可确保同一时间只有一个消费者读取一条消息。
-主题(Topics):与队列略有不同,它允许实现发布/订阅通信模型。队列是点对点通信,而主题可以将不同消息分发到不同队列。这种模型可以过滤和隔离消息,使消费者只读取他们感兴趣的消息。需要注意的是,基本层不提供主题功能,至少要使用标准层。
-中继(Relays):队列和主题都只设计用于单向通信,即生产者发送消息,接收者读取消息。如果要实现双向通信,则需要使用中继。Azure Relay是一个单独的服务,它具有以下特点:
- 旨在安全地公开企业网络内托管的服务。
- 支持单向、发布/订阅和双向等不同的通信模型。
- 不像VPN那样改变网络,更稳定且作用于单个应用程序端点。
以下是这三种实体的