事件驱动开源项目介绍

基于DDD的EventSroucing事件溯源和CQRS的项目正在迅速发展,这里介绍两个开源项目:flowing-retail和scalable-coffee-shop。它们都是基于Apache Kafka的Java实现。flowing-retail是基于业务流程的工作流方面的开源项目,通过引入领域事件和事件驱动,能够很好地解耦不同微服务之间的耦合,同时为流程的人工介入提供自然良好的切入点。更可以集成开源BPM流程引擎Camunda,基于微服务下的业务流程编排就变得更加灵活和可控,如果结合Saga实现分布式事务,能够实现基于BASE的最终一致性柔性事务,成为微服务架构下分布式事务最有前途的解决方案。scalable-coffee-shop是基于JavaEE容器下结合Kafka的事件驱动实现项目,巧妙地利用了JavaEE容器的异步机制与Kafka的发布订阅模式相结合,通过Kafka的消息事务机制实现了精确一致性的消息传递,可靠地在各个模块或微服务之间实现了事件传递和业务流程的实现。两者业务上共同点都是从下订单开始,到订单最终完成,flowing-retail分订单微服务,支付微服务和仓库微服务;scalable-coffee-shop分为订单模块,咖啡豆模块和制作模块。

你可能感兴趣的:(事件驱动开源项目介绍)