服务集成高可用性和工作负载共享配置
在服务集成中,消息传递引擎的配置非常灵活。您可以提供单个消息传递引擎,而此消息传递引擎不提供高可用性或工作负载分担。对于集群总线成员,您可以仅提供单个具有高可用性的消息传递引擎。此外,对于集群总线成员,您可以提供多个消息传递引擎,它们分担工作负载,或者既分担工作负载,还提供高可用性。
- 简单配置只有一个在单个服务器上运行的消息传递引擎。此配置适合于许多用途。但是,一个消息传递引擎只是单个故障点,该配置未提供高可用性或工作负载分担。
- 提供了高可用性的配置具有在集群中的服务器上运行的单个消息传递引擎,但该消息传递引擎可以故障转移到该集群中的一个或多个备用服务器。通过使用故障转移,可以避免只有单个故障点,并且可确保集群中始终有消息传递引擎在运行。
- 提供工作负载分担或者消息传递引擎的配置具有多个在集群中运行的消息传递引擎,每个消息传递引擎在该集群中的一个特定服务器上运行。消息传递负载分布在多个服务器中,您可以向该集群中添加新的服务器,而不会影响现有消息传递引擎。
- 提供了工作负载分担和高可用性的配置具有多个在集群中运行的消息传递引擎,每个消息传递引擎在该集群中的特定服务器上运行,并且还可以故障转移到该集群中的一个或多个备用服务器。
可以使用的配置取决于您创建的总线成员的类型。如果您创建服务器总线成员,那么可以仅创建简单配置。如果您创建集群总线成员,那么可以创建前面列表中的任何配置,视集群中的消息传递引擎数以及这些消息传递引擎的行为而定。有关更多详细信息,请参阅有关总线成员类型及其对高可用性和工作负载分担的影响。
有关您可以创建的配置的详细信息和示例,请参阅相关的子主题。
配置消息传递引擎的行为
要配置消息传递引擎的行为,请向总线添加一个集群并使用预定义的消息传递引擎策略。预定义的消息传递引擎策略支持频繁使用的集群配置,例如,工作负载分担、可伸缩性和/或高可用性。您应使用消息传递引擎策略辅助,它会创建一个或多个消息传递引擎,并配置这些消息传递引擎以提供必需的行为。还可以使用消息传递引擎策略辅助来设置定制配置。消息传递引擎策略辅助将指导您完成配置,并且会自动创建许多设置。有关更多信息,请参阅有关消息传递引擎策略辅助的主题。
在不使用消息传递引擎策略辅助的情况下也可以向总线添加集群和配置消息传递引擎的行为。如果您已熟悉此过程,请使用此过程。否则,请使用消息传递引擎策略辅助。
如果您在不使用消息传递引擎策略辅助的情况下向总线添加集群,那么应配置策略来控制消息传递引擎在该总线成员上的可用性行为。
- 如果想要实现高可用性,那么可使用具有一个消息传递引擎的集群总线成员和缺省服务集成策略(即“缺省 SIBus 策略”),这允许该消息传递引擎故障转移至集群中的任何其他应用程序服务器。或者,可创建新策略并配置该策略以指定其他可用性行为,例如,将特定服务器作为首选项或能够进行故障恢复。
- 如果希望实现工作负载分摊但不实现高可用性,那么可使用具有多个消息传递引擎的集群总线成员,并为每个消息传递引擎创建静态策略。这可能对可扩展的快速消息传递非常有用,在这种消息传递中没有与任何消息传递引擎相关联的持久状态,因此不需要进行故障转移。
- 如果您希望使用外部高可用性框架来管理消息传递引擎,请为它们创建“无操作”策略。
有关策略和配置的更多信息,请参阅有关服务集成策略的主题。
下表说明了在不使用消息传递引擎策略辅助的情况下可以如何实现不同的配置。
配置 | 总线成员的类型 | 消息传递引擎的数目 | 策略类型 |
---|---|---|---|
简单 | Server | 1 | 缺省值(“N 中取 1”) |
简单 | 集群 | 1 | 静态 |
高可用性 | 集群 | 1 | “N 中取 1”或“无操作” |
没有高可用性的工作负载分摊 | 集群 | 多个(通常,每个服务器对应一个消息传递引擎) | 静态 |
高可用性和工作负载共享 | 集群 | 多个(通常,每个服务器对应一个消息传递引擎) | “N 中取 1”或“无操作” |