流动零售 此示例应用程序展示了一个简单的订单履行系统,该系统被分解为多个独立组件(如 微服务)。仓库中包含多个实现方案的代码,以便广大用户可以了解代码并比较各个方案。下表(## 替代方案)列出了这些方案。示例遵循了领域驱动设计 (DDD),**事件驱动架构 (EDA)和微服务 (µS)**的经验教训,并旨在让您亲自体验这些主题。
注: 此代码的编写目的是为了解释。因此,我更倾向于使用简化的代码或复制粘贴,而不是使用生产就绪的代码和通用解决方案。请不要将代码风格视为最佳实践!它是专门编写的,以便易于解释的代码。
您可以在 O'Reilly 的《实用流程自动化》书中找到更多有关这些概念的信息。
- Apache Kafka 作为事件总线(可以轻松更改为消息传递,例如 RabbitMQ):
- REST 服务之间的通信。
- 此示例还展示了如何通过工作流引擎实现状态性恢复模式,例如状态性重试。
- Zeebe 代理负责工作分配。
运行时间长的服务和编排