首页 > 其他分享 >事件驱动架构

事件驱动架构

时间:2024-02-06 09:58:06浏览次数:47  
标签:异步 架构 分发 事件驱动 处理器 event 事件

事件(event)是状态发生变化时,软件发出的通知。

事件驱动架构(event-driven architecture)就是通过事件进行通信的软件架构。它分成四个部分。

 

  • 事件队列(event queue):接收事件的入口
  • 分发器(event mediator):将不同的事件分发到不同的业务逻辑单元
  • 事件通道(event channel):分发器与处理器之间的联系渠道
  • 事件处理器(event processor):实现业务逻辑,处理完成后会发出事件,触发下一步操作

对于简单的项目,事件队列、分发器和事件通道,可以合为一体,整个软件就分成事件代理和事件处理器两部分。

 

优点

  • 分布式的异步架构,事件处理器之间高度解耦,软件的扩展性好
  • 适用性广,各种类型的项目都可以用
  • 性能较好,因为事件的异步本质,软件不易产生堵塞
  • 事件处理器可以独立地加载和卸载,容易部署

缺点

  • 涉及异步编程(要考虑远程通信、失去响应等情况),开发相对复杂
  • 难以支持原子性操作,因为事件通过会涉及多个处理器,很难回滚
  • 分布式和异步特性导致这个架构较难测试

 

标签:异步,架构,分发,事件驱动,处理器,event,事件
From: https://www.cnblogs.com/wangtiantian/p/18009174

相关文章

  • 微服务架构
    微服务架构(microservicesarchitecture)是服务导向架构(service-orientedarchitecture,缩写SOA)的升级。每一个服务就是一个独立的部署单元(separatelydeployedunit)。这些单元都是分布式的,互相解耦,通过远程通信协议(比如REST、SOAP)联系。  微服务架构分成三种实现模式。RE......
  • 云架构
    云结构(cloudarchitecture)主要解决扩展性和并发的问题,是最容易扩展的架构。它的高扩展性,主要原因是没使用中央数据库,而是把数据都复制到内存中,变成可复制的内存数据单元。然后,业务处理能力封装成一个个处理单元(prcessingunit)。访问量增加,就新建处理单元;访问量减少,就关闭处理单元......
  • SDN关键技术及架构
    SDN是软件定义网络的简称,在SDN中,网络的控制面与数据面分离,并且通过中心控制器进行统一管理。SDN的主要目标是提高网络的灵活性、可编程性和智能化程度,从而更好地适应不断变化的业务需求。SDN可以通过控制器来管理网络设备,控制网络流量和优化网络服务质量。SDN还可以使网络更加安全......
  • 金融行业多端支付系统强一致性架构设计(下)
    2支付能力的快速接入支付快速接入:设计流程主要目标:屏蔽接入第三方支付平台的复杂度,为业务提供便捷接入的支付的能力。整体交互逻辑:用户下单后,业务线生成生订单的同时请求支付系统,返回携带加密后的收银台链接,业务前端渲染收银台H5链接,之后用户操作都直接与支付系统直接交互,不再经过......
  • VMware Cloud Foundation (VCF) - 多云全栈基础架构组合解决方案
    VMwareCloudFoundation(VCF)-多云全栈基础架构组合解决方案fullstackinfrastructurewithaplatform请访问原文链接:https://sysin.org/blog/vmware-cloud-foundation/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgVMwarebyBroadcom产品组合:VMwareCl......
  • 金融行业多端支付系统强一致性架构设计(上)
    到家业务。负责交易系统(提单、支付)以及基础系统(Api网关、定位、地址)等开发工作,通过深入到业务,搭建合理的业务架构。目前主攻降低软件复杂性设计、构建高可用系统方向。0前言线下现金交易,可能抹个零头、少几毛几块都问题不大,但平台上的准确性、一致性,是支付系统的首要指标。互联网......
  • 鱼和熊掌如何兼得?一文解析 RDS 数据库存储架构升级
    在2023年云栖大会上,阿里云数据库产品事业部负责人李飞飞在主题演讲中提到,瑶池数据库推出“DB+存储”一体化能力,结合人工智能、机器学习、存储等方法和创新能力,实现BufferPoolExtension能力和智能冷温热数据分层能力。在大会的《云数据库RDS年度发布与最佳实践》演讲中,阿里......
  • 实战高并发net6的微服务架构
    前言 在过去的两年里,我所在的公司积累了丰富的微服务经验,尤其是在高并发场景下。身边有不少朋友也从事微服务开发,但在高并发读写方面的经验相对较少,毕竟这样的经验并不容易获得。在我们所在行业,微服务的应用也相当普遍。我记得刚入职的时候,我们公司和旁边一家使用Java开发......
  • kekingcn/file-online-preview服务打包arm架构镜像
    1.gitte地址https://gitee.com/kekingcn/file-online-preview?_from=gitee_search 2.基础镜像打包FROMubuntu:20.04MAINTAINERchenjh"[email protected]"#内置一些常用的中文字体,避免普遍性乱码COPYfonts/*/usr/share/fonts/chinese/RUNapt-getclean&&apt-ge......
  • 基于SOA架构的汽车软件
    提纲1、车辆软件体系概述2、基于SOA的汽车软件架构的方法和关键技术1、车辆软件体系概述2、基于SOA的汽车软件架构的方法和关键技术参考资料1、https://zhuanlan.zhihu.com/p/666778275,汽车SOA架构设计方法及关键技术2、https://baijiahao.baidu.com/s?id=1784427072......