事件驱动架构-七巧低代码入门01

事件驱动架构(Event-Driven Architecture, EDA)是一种软件架构模式,它强调系统内各个组件之间通过事件或消息进行通信和协作。在事件驱动架构中,系统的各个部分(服务、组件等)不直接调用彼此的方法来进行通信,而是通过发送和接收事件或消息来实现解耦和松散耦合。

1.1 实施过程

事件代表系统中发生的重要事物或状态变化,可以是用户操作、传感器数据更新、系统错误等。消息是事件的载体,用于在系统内部或不同系统之间传递事件的数据和相关信息。

事件生产者产生事件并将其发送到系统中,事件消费者订阅特定类型的事件,并根据事件发生执行相应的逻辑或处理。

1.2 主要特点

事件驱动架构是一种非常流行的分布式异步架构模式,经常被用与构建高可伸缩性的应用程序。这种架构模式由一系列高度解耦的、异步接收和处理事件的单一职责的组件所组成,低代码平台中的事件触发和响应机制,如表单提交、流程状态变更、用户界面交互等,可以作为事件驱动架构中的事件源。

事件驱动架构具备以下特点:
松散耦合: 事件驱动架构通过事件的发布和订阅机制,实现了组件之间的松散耦合。系统的不同部分可以独立地演化和扩展,而不会直接影响到其他部分。
异步性: 事件驱动架构通常是异步的,即事件的发布和处理是非阻塞的,系统可以处理大量事件而不会被单个事件的处理时间所阻塞。
扩展性: 事件驱动架构通常支持跨平台的消息传递和事件处理,系统可以部署在不同的硬件设备或云平台上,并与其他系统进行集成交互。

1.3 实现方式

调停者拓扑是一种基于事件驱动架构的特定设计模式,旨在通过明确定义的调停者来处理和协调系统中的事件流。调停者拓扑通过引入中心化的调停者来管理事件的路由和分发。

调停者拓扑主要有5个主要的架构组件组成:事件(Event)、事件队列(Event Queue)、调停者(Event Mediator)、事件通道(Event Channel)和事件处理器(Event Processor)。

Event通过服务端发送到Event Queue,Event Queue传递消息到Mediator。Mediator接收到队列传递过来的原始消息,然后编排成异步的消息发送到Event Channel,Event Channel则通过具体的Event Processor响应具体的业务逻辑。

其中的「事件」常常是固定的,事件的分发传递的机制也是固定的,只有「响应」是可变的,或者说是可以配置或者编排的。软件开发的OCP原则告诉我们:"软件应该对修改关闭,但要对扩展开放"。而事件驱动就是在保持了事件和核心逻辑的稳定性和不被修改的前提下,通过定义不同的「响应」从而达到了对"扩展的开放"。

事件处理器(Event Processor)就是对事件的「响应」,在七巧低代码中具体的集成方式有:自定义事件脚本、扩展插件、第三方服务、连接器、业务编排等。

1.4 应用场景

事件驱动架构可应用于传感器数据、交易数据等的实时数据分析和处理,通过事件驱动的方式记录系统中每个重要操作的事件,可用于日志记录和审计,微服务中也通常通过事件驱动架构来实现解耦和异步通信。

常见的事件驱动架构的实现技术包括消息队列(如Kafka、RabbitMQ)、发布/订阅系统(如Redis Pub/Sub、AWS SNS)、事件驱动的微服务框架(如Spring Cloud Stream、Apache Kafka Streams)等。

相关推荐
DemonAvenger2 分钟前
深入剖析 sync.Once:实现原理、应用场景与实战经验
分布式·架构·go
Goboy1 小时前
从崩溃到升职:腾讯云EdgeOne Pages MCP拯救了我的996危机
后端·程序员·架构
uhakadotcom1 小时前
Gradio入门:快速构建机器学习交互界面
面试·架构·github
一道微光2 小时前
mac air m系列arm架构芯片安装虚拟机 UTM+debian 浏览器firefox和chrome
arm开发·macos·架构
alksql2 小时前
架构思路法
数据库·架构
Lethehong2 小时前
崖山YashanDB:下一代国产分布式数据库的架构革新与行业实践
数据库·分布式·架构
小蘑菇二号2 小时前
ARM 架构--通用寄存器/状态寄存器/控制寄存器/特殊用途寄存器
arm开发·架构
张彦峰ZYF2 小时前
构建高效复杂系统的关键:架构与模块详解
系统架构
CloudJourney2 小时前
(万字超详细-网络版本)VXLAN详解:概念、架构、原理、搭建过程、常用命令与实战案例
网络·架构
文火冰糖的硅基工坊11 小时前
[创业之路-343]:创业:一场认知重构与组织进化的双向奔赴
华为·架构·创业·公司·治理