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

【架构】事件驱动架构(Event - Driven Architecture,EDA)

一、事件驱动架构理论基础

事件驱动架构(Event - Driven Architecture,EDA)是一种软件设计范式,事件驱动的体系结构由生成事件流侦听这些事件的事件使用者以及将事件从生成者传输到使用者的事件通道组成。

在这里插入图片描述

在事件驱动架构中,系统的行为由事件触发。事件可几乎实时发送,因此使用者可在事件发生时立即做出响应。 生成者脱离使用者,即生成者不知道哪个使用者正在倾听。 使用者之间也能彼此脱离,且每个使用者都能看到所有事件。


二、核心组件

在这里插入图片描述

事件源(Event Source)

产生事件的地方,可以是用户界面、传感器、业务系统等。例如,在一个电商系统中,用户提交订单这个操作就是一个事件源,会产生 “订单已提交” 事件。

事件队列(event queue)

接收事件的容器。

分发器(event mediator)

将不同的事件分发到不同的业务逻辑单元。

事件通道(Event Channel)

负责事件的传输和分发,也被称为消息队列或事件总线。它可以实现事件的异步处理和组件之间的解耦。常见的消息队列有 RabbitMQ、Kafka 等。

事件处理器(Event Handler)

监听事件通道中的事件,并根据事件的类型和内容执行相应的操作。例如,当接收到 “订单已提交” 事件后,事件处理器可以进行库存检查、生成物流单号等操作。


三、工作流程

活动图

相关文章:

  • electron提升软件运行权限,以管理员权限运行
  • Linux 常见指令
  • Linux之文件系统
  • Swiper插件的运用和学习
  • 【IO】java IO流的类型及IO模型
  • 大模型本地部署对于硬件配置要求太高,云端运行又担心数据泄露,有什么办法可以避免数据泄露又能够运行比较大的模型吗
  • ubuntu 源码编译ffmpeg
  • 大模型提示词工程实战
  • Linux中的查看命令
  • kkFileView报错no office manager available
  • 【数电笔记】第一章 数制和码制
  • 计算机毕业设计SpringBoot+Vue.js学生读书笔记共享(源码+LW文档+PPT+讲解+开题报告)
  • 【微服务】深入解析spring aop原理
  • 【0409】Postgres内核 CREATE DATABASE 之 从 new_record[] 加载 tuple 数据部分 到 堆空间指定区域 ⑥
  • 机器翻译与语音识别技术:推动人机交互的新篇章
  • Java数据结构_一篇文章搞定java对象的比较_7
  • 基于Weber和simulink的齿轮啮合刚度计算
  • 基于深度学习与知识图谱的设备智能维护系统KGPHMAgent
  • PHP2(WEB)
  • Redission可重试、超时续约的实现原理
  • 浙能集团原董事长童亚辉被查,还是杭州市书法家协会主席
  • 科技部等七部门:优先支持取得关键核心技术突破的科技型企业上市融资
  • 以军向也门3个港口的居民发布撤离令
  • 陕西一村民被冒名贷款40余万续:名下已无贷款,将继续追责
  • 福建宁德市长张永宁拟任设区市党委正职,曾获评全国优秀县委书记
  • 支持企业增强战略敏捷更好发展,上海市领导密集走访外贸外资企业