download:Docker 系统性入门+进阶实践(2021最新版)
一、案例背景
首先我们要晓得,MQ 音讯的作用是用于;解耦过长的业务流程和应对流量冲击的消峰。如;用户下单支付完成后,拿到支付音讯推进后续的发货流程。也能够是我们基于 中的案例场景,给雇员提晋级别和薪资的时分,也发送一条MQ音讯,用于发送邮件通知给用户。
- 从薪资调整到邮件发送,这里是2个业务流程,经过 MQ 音讯的方式停止衔接。
- 其实MQ音讯的运用场景特别多,原来你可能运用多线程的一些操作,如今就扩展为多实例的操作了。发送 MQ 音讯出来,让应用的各个实例接纳并停止消费。
二、范畴事情
由于我们本章所解说的内容是把 RocketMQ 放入 DDD 架构中停止运用,那么也就引申出范畴事情定义。所以我们先来理解下,什么是范畴事情。
范畴事情,能够说是解耦微效劳设计的关键。范畴事情也是范畴模型中十分重要的一局部内容,用于标示当前范畴模型中发作的事情行为。一个范畴事情会推进业务流程的进一步操作,在完成业务解耦的同时,也推进了整个业务的闭环。
- 首先,我们需求在范畴模型层,添加一块 event 区域。它的存在是为了定义出于当前范畴下所需的事情音讯信息。信息的类型能够是model 下的实体对象、聚合对象。
- 之后,音讯的发送是放在根底设置层。自身根底设置层就是依赖倒置于模型层,所以在模型层所定义的 event 对象,能够很便当的在根底设置层运用。而且大局部开发的时分,MQ音讯的发送与数据库操作都是关联的,采用的方式是,做完数据落库后,推送MQ音讯。所以定义在仓储中完成,会愈加得心应手、瓜熟蒂落。
- 最后,就是 MQ 的音讯,MQ 的消费能够是本身效劳所发出的音讯,也能够是外部其他微效劳的音讯。就在小傅哥所整体讲述的这套简明教程中 DDD 局部的触发器层。