2021
09-24
09-24
SpringBoot实现异步事件驱动的方法
目录Spring事件驱动源码实战在项目实际开发过程中,我们有很多这样的业务场景:一个事务中处理完一个业务逻辑后需要跟着处理另外一个业务逻辑,伪码大致如下:@ServicepublicclassProductServiceImpl{...publicvoidsaveProduct(Productproduct){productMapper.saveOrder(product);notifyService.notify(product);}...}很简单并且很常见的一段业务逻辑:首先将产品先保存数据库,然后发送通知。某...
继续阅读 >
目录一、前言:从物流详情开始二、领域事件2.1、建模领域事件2.2、领域事件代码解读2.3、领域事件的存储2.3.1、单独的EventStore2.3.2、与业务数据一起存储2.4、领域事件如何发布2.4.1、由领域聚合发送领域事件2.4.2、事件总线VS消息中间件三、Saga分布式事务3.1、Saga概要3.2、Saga实现3.2.1、协同式(choreography)3.2.2、编排式(orchestration)3.2.3、补偿策略四、CQRS五、自治服务和系统六、结语一、前言:从物流详情开始大...
前言SpringBoot是Spring的包装,通过自动配置使得SpringBoot可以做到开箱即用,上手成本非常低,但是学习其实现原理的成本大大增加,需要先了解熟悉Spring原理。如果还不清楚Spring原理的,可以先查看博主之前的文章,本篇主要分析SpringBoot的启动、自动配置、Condition、事件驱动原理。正文启动原理SpringBoot启动非常简单,因其内置了Tomcat,所以只需要通过下面几种方式启动即可:@SpringBootApplication(scanBasePackages=...