当前位置: 首页 > news >正文

网站写动态新闻有什么好处网络推广公司电话

网站写动态新闻有什么好处,网络推广公司电话,网站中英文域名,电子商务网站开发形式有文章目录 Pre领域事件的核心概念领域事件的作用领域事件的识别领域事件的技术实现领域事件的运行机制案例领域事件驱动的优势 Pre DDD - 微服务设计与领域驱动设计实战(中)_ 解决微服务拆分难题 EDA - Spring Boot构建基于事件驱动的消息系统 领域事件的核心概念 领域事件&a…

文章目录

  • Pre
  • 领域事件的核心概念
  • 领域事件的作用
  • 领域事件的识别
  • 领域事件的技术实现
  • 领域事件的运行机制案例
  • 领域事件驱动的优势

在这里插入图片描述


Pre

DDD - 微服务设计与领域驱动设计实战(中)_ 解决微服务拆分难题

EDA - Spring Boot构建基于事件驱动的消息系统


领域事件的核心概念

领域事件(Domain Event)是领域驱动设计(DDD)中的一个重要概念,用于表示在领域中发生的、对业务有重要意义的事件。这些事件通常会导致进一步的业务操作,并且在微服务架构中,领域事件是实现微服务解耦的关键机制之一。

领域事件的作用

  1. 业务解耦:领域事件可以切断微服务之间的强依赖关系,发布方只需发布事件,而不需要关心订阅方的处理结果,从而实现微服务之间的解耦。

  2. 业务闭环:领域事件有助于形成完整的业务闭环。通过事件驱动的方式,业务流程可以在不同的微服务之间流转,确保业务的连续性和一致性。

  3. 最终一致性:在微服务架构中,领域事件通常采用最终一致性,而不是强一致性。这种方式可以减少分布式事务的使用,提升系统的性能和可扩展性。


领域事件的识别

在业务分析过程中,可以通过以下关键词来识别领域事件:

  • “如果发生……,则……”
  • “当做完……的时候,请通知……”
  • “发生……时,则……”

这些场景中的事件通常会导致进一步的业务操作,因此可以被识别为领域事件。

介绍一个保险承保业务过程中有关领域事件的案例。一个保单的生成,经历了很多子域、业务状态变更和跨微服务业务数据的传递。这个过程会产生很多的领域事件,这些领域事件促成了保险业务数据、对象在不同的微服务和子域之间的流转和角色转换。
在下面这张图中,列出了几个关键流程,用来说明如何用领域事件驱动设计来驱动承保业务流程

在这里插入图片描述

事件起点:客户购买保险 - 业务人员完成保单录入 - 生成投保单 - 启动缴费动作

  1. 投保微服务生成缴费通知单,发布第一个事件:缴费通知单已生成,将缴费通知单数据发布到消息中间件。收款微服务订阅缴费通知单事件,完成缴费操作。缴费通知单已生成,领域事件结束。
  2. 收款微服务缴费完成后,发布第二个领域事件:缴费已完成,将缴费数据发布到消息中间件。原来的订阅方收款微服务这时则变成了发布方。原来的事件发布方投保微服务转换为订阅方。投保微服务在收到缴费信息并确认缴费完成后,完成投保单转成保单的操作。缴费已完成,领域事件结束。
  3. 投保微服务在投保单转保单完成后,发布第三个领域事件:保单已生成,将保单数据发布到消息中间件。保单微服务接收到保单数据后,完成保单数据保存操作。保单已生成,领域事件结束。
  4. 保单微服务完成保单数据保存后,后面还会发生一系列的领域事件,以并发的方式将保单数据通过消息中间件发送到佣金、收付费和再保等微服务,一直到财务,完后保单后续所有业务流程。这里就不详细说了。

总之,通过领域事件驱动的异步化机制,可以推动业务流程和数据在各个不同微服务之间的流转,实现微服务的解耦,减轻微服务之间服务调用的压力,提升用户体验。


领域事件的技术实现

领域事件的执行需要一系列的组件和技术来支撑。我们来看一下这个领域事件总体技术架构图,领域事件处理包括:事件构建和发布、事件数据持久化、事件总线、消息中间件、事件接收和处理

在这里插入图片描述

领域事件的技术实现通常包括以下几个步骤:

  1. 事件构建和发布

    • 事件的基本属性包括事件唯一标识、发生时间、事件类型和事件源。
    • 事件的业务属性记录事件发生时的业务数据,这些数据会随事件传输到订阅方。
    • 事件发布可以通过应用服务、领域服务或消息中间件来完成。
  2. 事件数据持久化

    • 事件数据持久化可以用于系统之间的数据对账或审计。
    • 事件数据可以持久化到本地业务数据库的事件表中,或者持久化到共享的事件数据库中。
  3. 事件总线(EventBus)

    • 事件总线是微服务内聚合之间领域事件的重要组件,负责事件的分发和接收。
    • 事件总线可以同步或异步地传递数据,确保事件在微服务内外的订阅者之间正确传递。
  4. 消息中间件

    • 跨微服务的领域事件通常使用消息中间件(如Kafka、RabbitMQ)来实现事件的发布和订阅。
    • 消息中间件可以确保事件在微服务之间的可靠传递。
  5. 事件接收和处理

    • 订阅方通过监听机制接收事件数据,并将其持久化到本地数据库。
    • 订阅方在领域服务中处理事件,完成后续的业务操作。

领域事件的运行机制案例

以保险承保业务为例,领域事件的运行机制如下:

在这里插入图片描述
事件起点:出单员生成投保单,核保通过后,发起生成缴费通知单的操作。

  1. 缴费通知单生成

    • 投保微服务生成缴费通知单,并发布“缴费通知单已生成”事件。
    • 收款微服务订阅该事件,完成缴费操作。
  2. 缴费完成

    • 收款微服务缴费完成后,发布“缴费已完成”事件。
    • 投保微服务订阅该事件,完成投保单转保单的操作。
  3. 保单生成

    • 投保微服务在投保单转保单完成后,发布“保单已生成”事件。
    • 保单微服务订阅该事件,完成保单数据的保存操作。
  4. 后续业务流程

    • 保单微服务完成保单数据保存后,会触发一系列后续的领域事件,推动业务流程在佣金、收付费、再保等微服务之间流转。

领域事件驱动的优势

  1. 解耦微服务:通过领域事件,微服务之间的依赖关系被弱化,发布方和订阅方可以独立演化。

  2. 提升系统性能:领域事件采用最终一致性,减少了分布式事务的使用,提升了系统的性能和可扩展性。

  3. 支持复杂业务流程:领域事件可以支持复杂的业务流程,尤其是在跨多个微服务的场景中,事件驱动的方式可以简化系统的设计和维护。

在这里插入图片描述

http://www.mmbaike.com/news/99958.html

相关文章:

  • 赣州章贡区医保局电话seo流量排名工具
  • 做301网站打不开百度知道灰色词代发收录
  • 更改网站后台北京出大大事了
  • 网站建设之开展电子商务长沙网站优化对策
  • 手机软件下载网站wap模板seo线下培训课程
  • 兰州网站建设价百度推广登陆首页
  • 怎样找素材做网站青岛seo网站推广
  • 回收做哪个网站好些公司关键词排名优化
  • 网站建设如何控标网络营销的四大特点
  • 小创业公司网站怎么做宁波网站制作优化服务公司
  • 测词汇量的专业网站百度搜索风云榜小说总榜
  • 怎么用ajax做电商网站福州seo结算
  • wordpress直接购买seo基础知识培训视频
  • 山东中佛龙建设有限公司网站国内搜索引擎排名第一的是
  • 重庆市住房和城乡建设厅政府网站百度入口的链接
  • c2c平台的特点是什么泉州seo网站排名
  • 湖州网站制作杭州网站优化流程
  • win8网站模版磁力王
  • 优秀的展厅设计网站百度指数查询官网入口登录
  • 58网站怎么样做效果会更好网页搜索关键词
  • 公安网站建设的目标东莞网站开发公司
  • 网站建设合同注意点正规电商培训学校排名
  • 购物网站php模板百度网站怎么申请注册
  • 网络平台贷款逾期不还毕节地seo
  • 看汽车哪个网站好厦门百度广告
  • 小程序代理加盟前景搜狗seo
  • 青岛做网站报价seo搜索引擎优化主要做什么
  • 广州专业做网站多少钱google谷歌搜索主页
  • python和java做网站宁波正规优化seo价格
  • 广州商旅网站制作无锡百度seo优化