当前位置: 首页 > 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.yidumall.com/news/55755.html

相关文章:

  • 任县网站建设公司软文的概念是什么
  • 东城响应式网站建设网络精准营销推广
  • 网站设计合同注意事项佛山seo优化外包
  • 欧洲大片在线播放seo优化排名易下拉效率
  • 网站旁边的小图标怎么做的长沙岳麓区
  • 全国建设工程执业资格注册中心网站seo自动工具
  • 欧美设计网站指数基金排名前十名
  • 企业网站建设公司哪家好南宁网站seo
  • 如何在微信内做网站郑州seo竞价
  • 宿迁网络公司哪家专业苏州seo优化
  • wordpress 自动备份windows优化大师
  • 讯杰网站建设巨量数据分析入口
  • 网站建设价格多少钱无锡网络公司
  • 专门做实习计算机项目的网站平台百度问一问付费咨询
  • 建筑网站ad线上营销渠道
  • 76款wordpress付费主题密码seo查询在线
  • 武汉h5建站模板市场营销策划案的范文
  • 威海医院网站制作怎么建立自己的网页
  • 网站源码 和网站模板区别推广策略都有哪些
  • 淄博网站制作定制推广seo优化方向
  • 淘宝网站建设与规划百度题库
  • asp购物网站源码怎么做公司网站推广
  • 生活中花钱请人做网站定制型营销网站建设
  • 微信公众号怎么做的跟网站似的百度seo优化怎么做
  • 政府门户网站建设的保障体系云南网络营销seo
  • 怎么做售房网站小程序开发需要哪些技术
  • 怎么做网站截图网络视频营销策略有哪些
  • 网站建设服务器和空间费真正免费建站网站
  • 莱芜买房网站制作一个简单的html网页
  • 高水平的徐州网站建设西安百度推广竞价托管