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

亿赐客网站怎么样做返利网站

亿赐客网站怎么样,做返利网站,温州手机网站制作哪家好,旅游网站开发参考文献目录概述什么是事件?结偶与松散耦合事件驱动架构的工作原理事件驱动架构模型事件驱动架构的优势RabbitmqRabbitMQ 在 EDA 中的角色RabbitMQ vs. 其他消息队列概述 事件驱动架构是一种用于应用设计的软件架构和模型。事件驱动系统旨在捕获、沟通和处理解耦服务之间的…

目录

    • 概述
    • 什么是事件?
    • 结偶与松散耦合
    • 事件驱动架构的工作原理
    • 事件驱动架构模型
    • 事件驱动架构的优势
    • Rabbitmq
      • RabbitMQ 在 EDA 中的角色
      • RabbitMQ vs. 其他消息队列

概述

事件驱动架构是一种用于应用设计的软件架构和模型。事件驱动系统旨在捕获、沟通和处理解耦服务之间的事件。这意味着,系统可以保持异步,同时仍共享信息和完成任务。

许多现代应用设计都是由事件驱动的,例如必须实时利用客户数据的客户互动框架。事件驱动应用可以用任何一种编程语言来创建,因为事件驱动本身是一种编程方法,而不是一种编程语言。事件驱动架构支持最小程度的耦合,因此非常适合现代分布式应用架构。

EDA 采用松散耦合方式,因为事件发起者并不知道哪个事件使用者在监听事件,而且事件也不知道其所产生的后续结果。

什么是事件?

事件用于记录系统硬件或软件的任何重要事件或状态变更。事件与事件通知不同,事件通知是由系统发送的消息或通知,用于通知系统的另一方发生了事件。

事件源可能来自于内部输入,也可能是外部输入。事件可以由用户生成,例如单击鼠标或按键;也可以是外部来源,例如传感器输出;或来自于系统,例如加载程序。

结偶与松散耦合

解耦与松散耦合指的是软件架构和事件驱动系统中两个相关但不同的概念。

解耦是消除或最小化系统中独立组件之间的直接依赖关系的做法,以便组件之间不存在“唇亡齿寒”的关系。在 EDA 的语境下,通过确保生成事件的组件只需发送事件数据,而不必考虑特定的使用者组件,从而实现解耦。这种“断联”使组件彼此独立,创造出总体更灵活的系统。

松散耦合是一种特定形式的解耦,旨在降低组件之间的相互依赖的程度,而不是将它们完全分离开。在松散耦合的系统中,组件可能会彼此交互,但不会导致形成任何形式的依赖关系。

这两种系统都有利于提高灵活性和独立性,进而创造出敏捷且可扩展的系统。

事件驱动架构的工作原理

事件驱动架构由事件发起者(发布者)和事件使用者(订阅者)组成。事件发起者检测或感知事件,并以消息的形式呈现事件。由于是解耦系统,它不知道事件的使用者,也不知道事件的结果。

检测到事件后,将从事件发起者通过事件通道将事件传输给事件使用者,在事件通道中,事件处理平台会异步处理事件。发生事件时,需要通知事件使用者。他们可能会处理事件,也可能只是会受到事件影响。

事件处理平台将执行正确的事件响应,并将活动发送给下游正确的使用者。该下游活动即看到事件结果的位置。

Apache Kafka 是一个分布式数据流平台,是备受欢迎的事件处理解决方案。它能够实时处理事件流的发布、订阅、存储和处理。Apache Kafka 支持各种重视高吞吐量和可扩展性的用例,通过最大程度减少某些应用中对数据共享的点对点集成需求,因而可以将延迟降至毫秒级。

除此之外,还有其他一些中间件事件管理器也可用作事件处理平台。

事件驱动架构模型

事件驱动架构可以基于发布/订阅模型或事件流模型。

发布/订阅模型
这是基于事件流订阅的消息传递基础架构。借助该模型,在事件发生或发布后,事件将发送给需要通知的订阅者。

事件流模型
借助事件流模型,事件会被写入日志。事件使用者无需订阅事件流。相反,他们可以读取事件流的任何部分,并可以随时加入事件流。

事件流有几种不同的类型:

事件流处理会使用数据流平台(如 Apache Kafka)获取事件,并处理或转换事件流。
简单事件处理是指事件会立即触发事件使用者行动的情形。
复杂事件处理需要事件使用者处理一系列事件才能检测到模式。事件流处理可用于检测事件流中有意义的模式。

事件驱动架构的优势

EDA 可以帮助企业实现灵活的系统,能够通过适应变化并实时做出决策来改进工作流。实时情境感知意味着企业决策(无论是手动还是自动化)都可以使用能够反映系统当前状态的所有可用数据来做出决定。

当物联网(IoT)设备、应用和网络等事件源发生事件时,事件便会被捕获,使事件发起者和事件使用者能够实时共享状态和响应信息。

企业可以向其系统和应用添加事件驱动架构,提高应用的可扩展性和响应速度,改善对数据和背景信息的访问以做出更明智的业务决策。

事件驱动架构提供解耦优势,数据或服务的发起者和使用者不需要直接沟通,因此有利于打造更灵活且扩展性高的系统。进而进一步简化新组件的集成,提高容错性和系统的整体效率。

Rabbitmq

RabbitMQ 是事件驱动架构(EDA)中事件通道的典型实现,属于消息队列(Message Queue)中间件。它通过发布 - 订阅模式(Pub/Sub)实现组件间的解耦,是构建事件驱动系统的核心工具之一。

RabbitMQ 在 EDA 中的角色

  1. 事件通道
    RabbitMQ 作为中间层,接收生产者发送的事件(消息),并将其路由到对应的消费者。
  2. 支持多种消息模式
    工作队列(Work Queue):多个消费者竞争处理同一类事件(负载均衡)。
    发布 - 订阅(Publish/Subscribe):一个事件被多个消费者同时接收。
    路由(Routing):按规则(如事件类型)将事件路由到特定队列。
    主题(Topics):基于模糊匹配(如order.#)订阅事件。
  3. 保证事件可靠性
    支持持久化(Persistence):事件可存储到磁盘,避免 Broker 崩溃导致数据丢失。
    确认机制(Ack):消费者处理完事件后向 RabbitMQ 确认,未确认的事件会重新分发。

RabbitMQ vs. 其他消息队列

特性RabbitMQKafka
消息模式支持多种(直连、主题、扇形等)基于发布 - 订阅的事件流处理
吞吐量中等(万级 TPS)极高(百万级 TPS)
消息持久化支持(基于磁盘)高吞吐量持久化(顺序写磁盘)
适用场景企业级消息系统、复杂路由大数据、实时流处理、日志收集

文章转载自:

http://BNgDvcA1.gydsg.cn
http://ffKFGpzB.gydsg.cn
http://E17roa6c.gydsg.cn
http://mBrL6gvE.gydsg.cn
http://zOaFjNFr.gydsg.cn
http://ZZ0XurmY.gydsg.cn
http://6tlWZdL7.gydsg.cn
http://Su5Zh1YB.gydsg.cn
http://I8oZW1qF.gydsg.cn
http://DOz4rghV.gydsg.cn
http://FpeRTIem.gydsg.cn
http://DGLzz1IO.gydsg.cn
http://R0LiroHz.gydsg.cn
http://Z5wBezwn.gydsg.cn
http://Q151dj8c.gydsg.cn
http://Ov1A7xeT.gydsg.cn
http://sXKxP4Dq.gydsg.cn
http://T8ODJ5AQ.gydsg.cn
http://CQFGYaqT.gydsg.cn
http://PqaKD1H3.gydsg.cn
http://Q1FXDJ7H.gydsg.cn
http://vi0J3EJF.gydsg.cn
http://E6tLtJyn.gydsg.cn
http://XJd6cxZF.gydsg.cn
http://8hJIYlVR.gydsg.cn
http://zh73cocK.gydsg.cn
http://bBAFuILJ.gydsg.cn
http://bKXVGCCr.gydsg.cn
http://JR6UJiVe.gydsg.cn
http://o8mBRGvN.gydsg.cn
http://www.dtcms.com/wzjs/728239.html

相关文章:

  • 做网站要学什么自己怎么拍做美食视频网站
  • logo网站设计论文天河区住房和建设水务局网站
  • 大足建网站的本地网站地图生成器
  • 做网站的时候怎么把图片往左移自媒体平台大全
  • editplus建设网站教学江苏优化网站公司
  • 做印刷网站公司哪家好做中国旅游网站的目的与必要性
  • 散热器 东莞网站建设wape
  • 普同网站跟营销型网站的区别外国炫酷网站
  • 工程师报考网站域名商的网站
  • 红色网站源码网页搭建公司
  • 找大学生做网站要多少钱搬瓦工vps wordpress
  • 网站 栏目 英语一建二建报考条件及专业要求
  • 手机端企业网站源码下载常州网站建设外包公司哪家好
  • 网站开发的工作经验东莞气缸东莞网站建设
  • 建设网站链接建设工程监理
  • 网站分析案例如何做好一个营销方案
  • 关于制作网站的方案怎么做网站推广最有效
  • jsp做网站组件最简单的手机网站制作
  • 网站 php .net广州网站建
  • 个人网站和企业网站的区别免费手机网站建站系统
  • 山东金融行业网站开发电商网站开发的流程图
  • 建设银行福建分行招聘网站wordpress和django哪个好
  • 票务网站开发端口wordpress 页头设置
  • 别人做的网站打不开沧浪企业建设网站价格
  • 惠州做网站开发广州网站建设+美词
  • dns可以将网站域名解析档案信息网站建设的意义
  • 东莞网站优化教程高阳网站制作
  • 出版社网站必须做企业可信认证嘛注册域名哪个网站好
  • 武安企业做网站推广珠海 网站建设
  • 深圳建网站价格北京的互联网企业