9.3. saga 服务配置


Saga EIP 要求实施接口 org.apache.camel.saga.CamelSagaService 的服务添加到 Camel 上下文中。Camel 目前支持以下 Saga 服务:

  • InMemorySagaService :这是 Saga EIP 的基本 实现,它不支持高级功能(没有远程上下文传播,在应用程序失败时没有一致性保证)。

9.3.1. 使用内存 Saga 服务

在生产环境中不建议使用内存中 Saga 服务,因为它不支持 Saga 状态的持久性(仅保留在内存中),因此它不能保证 Saga EIPs 在应用程序故障时的一致性(例如 JVM 崩溃)。另外,在使用内存 Saga 服务时,无法使用传输级标头将 Saga 上下文传播到远程服务(它可以通过其他实现完成)。如果要使用内存 saga 服务,您可以添加以下代码来自定义 Camel 上下文。该服务属于 camel-core 模块。

context.addService(new org.apache.camel.impl.saga.InMemorySagaService());
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.