50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

关于复杂事件处理和事件驱动架构的争论

  • 2008-09-02
  • 本文字数:1779 字

    阅读完需:约 6 分钟

复杂事件处理(Complex Event Processing ,CEP)系统和事件驱动架构(Event Driven Architecture,EDA)都被认为会在目前和未来的精致繁杂的系统设计中扮演重要角色。但是它们的角色是什么?会对业界产生什么样的影响?最近 社区又开始了关于这些问题的争论。David Luckham 和 Roy Schulte 还编撰了一个用于 CEP 和 EDA 的术语概览和词汇表

抛开实现细节,Luckham 和 Schulte 对每个术语做了定义:

首先“事件”这个最普遍的术语,是有问题的。基本上它包含两个截然不同的含义:(1)一个发生的活动;(2)计算机系统里面代表某个活动的事物。按理说, 应该引入两个不同的术语,比如“事件(event)”和“事件对象(event object)”。但是,事实是在每个稍微长些的讨论中,你都会发现这样做太晦涩难懂了,它们【注:event 和 event object 这两个分开的术语】的区别要不就是被误用,要不就是被忘记甚至忽略了。举个例子,如果要使用两个术语,那么很有可能导致你在说“事件处理 (event processing)”时,其实意思是指“事件对象处理(event object process)”。所以说,最好的办法是复用“事件(event)”这个单词,通过每个词的上下文来理解它所要表达的意思。

Luckham 和 Shulte 将“复杂事件”定义成“一个对多个其它子事件的抽象的事件。”在提到穆迪投资者服务系统中的问题导致不正确的评级时, Joe Mckendrick 谈论到了复杂事件的话题。Mckendrick 说“也就是说,目前即使没有上亿美元,也有数百万美元的投资决定是由此类系统产生的错误数据造成的。”Mckendrick 的立场是,复杂的识别和感应系统也许仍然需要人类的参与,以阻止问题或者错误的发生。

Mckendrick 提到 K. Mani Chandy 博士,加州理工学院的一个正在做识别和感应研究的计算机科学教授,他曾经表示在基于复杂事件做决策时,要保证这个过程中有人的参与。Chandy 说在有些情况下,比如战术军事上的某个涉及到使用武器的操作,“它会一直有个对此事最终行为负责的人参与其中。”

Chandy 和 Micahel Olson 谈到为何 事件处理与‘识别和感应’应用(PDF)也许将在业务活动监测和业务仪表盘领域普遍存在。Chandy 和 Olson 对 Web 识别和感应应用有非常深入的研究,这些应用从 Web 数据源提取事件和数据:

Web 数据源可以是活跃的或者休眠的。客户端可以通过请求 - 应答协议轮询服务器,以获得信息。而信息也可以通过 RSS 或者 ATOM 流,或者其他的数据协议,推送给客户端。休眠的数据源也可以有个活跃的接口,方法是让代理定期轮询它,并在接下来的轮询中传输更改的信息。

但是 CEP 真的需要一个完全不同的架构类型吗?

Brenda Michelson 就事件处理写了一篇文章——事件驱动架构概览。他定义了 EDA 中的 5 类组件:

  • 事件元数据:事件元数据包括事件说明和事件处理规则;
  • 事件处理:事件处理的核心是引擎和事件发生数据;
  • 事件工具:事件开发工具用于定义事件说明和事件规则,以及管理订阅等。事件管理工具提供事件处理基础架构的管理和监测,事件流的监测以及显示事件生成和处理状态等;
  • 企业集成:一个企业集成中枢在事件驱动架构中扮演着重要的角色。需要集成的一些服务包括:事件预处理(过滤、路由和转变等)、事件通道传输、服务调用、业务流程调用、发布和订阅,以及企业信息访问等;
  • 源和目的:创建事件和 / 或执行一个事件驱动动作的企业资源(应用、服务、业务流程、数据存储、人员和自动代理等)。

Michelson 还谈到了 EDA 和 SOA 之间的关系:

我相信 SOA 和 EDA 是平等和互补的。所以,我不认同那些努力传播 SOA 的同学们所说的“EDA 只是 SOA 的一个子集”的论断。一个更广泛的事件驱动架构概念,不仅是超越事件驱动 SOA 的,还应该包括实时信息流和分析,以及复杂事件处理。

Ivar Jacobson 博士在 EDA 方面有自己独到的见解。Jacobson 提出的问题是:我们需要事件驱动架构吗?在回答他自己的问题时,Jacobson 说,“当 EDA 认为事件是系统中最重要的组成时,你最好注意那些组件或者服务,以及组件之间的‘通道’”。事件可以被生产、传递和消费,甚至在系统中被传播。这种类型系统的一个最大好处就是:

最有意思的组件是那些服务。你同时有了面向服务的架构(SOA),甚至更多。

不论哪一种情况,EDA 和 SOA 都不会彼此不相容或者排斥。它们都能被用来处理复杂事件处理系统,并为你的企业提供自动的或者有效的产出。

查看英文原文: Complex Event Processing and EDA?

2008-09-02 03:184737

评论 1 条评论

发布
用户头像
妙极
2021-08-17 10:12
回复
没有更多了
发现更多内容

私域商城物流模块开发实战:基于快递鸟API构建高效履约体系

快递鸟

谙流 ASK 技术解析(二):高性能低延迟

AscentStream

消息队列

Claude Code 从入门到精通:最全配置指南和工具推荐

Immerse

iPaaS 与传统 ESB 的区别,企业该如何选择?

谷云科技RestCloud

ESB API 数据传输 集成平台 ipaas

徕卡首批沪产中高端显微镜正式交付,开启国产化新篇章

财见

YashanDB智能监控与告警系统构建教程

数据库砖家

全面获取TSC频率:提升性能分析与基准测试精度

qife122

Linux内核 时间戳计数器

YashanDB智能缓存技术提升企业数据库性能

数据库砖家

YashanDB智能数据分片技术,提升企业数据处理能力

数据库砖家

Flink Agents:基于Apache Flink的事件驱动AI智能体框架

Apache Flink

大数据 flink 实时计算

数据集成平台怎么选?从ETL到CDC再到iPaaS的全景对比

谷云科技RestCloud

数字化转型 ETL 集成平台 CDC ipaas

腾讯测试实践与工具分享之后台测试

优测云服务平台

测试工具

百度百舸第一时间支持 π0.5 模型微调,助力具身智能企业抢占研发先机

Baidu AICLOUD

具身智能

Zypher Network 公布 PoP 代币经济模型,开启可信 AI 新篇章

股市老人

Openresty Tracing 最佳实践

观测云

openresty

AWS SQS 可观测性最佳实践

观测云

AWS SQS Connector

淘宝闪购基于Flink&Paimon的Lakehouse生产实践:从实时数仓到湖仓一体化的演进之路

阿里云大数据AI技术

GSMA呼吁弥合互联网应用鸿沟

财见

PostgreSQL大表同步优化:如何避免网络和内存瓶颈?

谷云科技RestCloud

postgresql API 数据同步 ETL 数据集成工具

Lazada 如何用实时计算 Flink + Hologres 构建实时商品选品平台

阿里云大数据AI技术

flink 阿里云 数据分析 实时计算 hologres

YashanDB智能索引策略,提高查询效率实用教程

数据库砖家

如果大模型是一片星空,谁是北斗?

脑极体

AI

越级才豪华,“磁悬浮豪华电7座SUV”捷途X70L即将预售

科技热闻

HarmonyOS编写教师节贺卡

程序员潘Sir

鸿蒙 HarmonyOS HarmonyOS NEXT

Audition 入门教程:音频降速

北桥苏

Adobe Audition

1688商品列表API数据解析

tbapi

1688商品列表接口 1688API 1688数据采集 1688数据分析

【IoTDB 线上小课 19】开源时序数据库 Apache IoTDB,四大优势解决企业选型难题!

Apache IoTDB

淘宝闪购实时分析黑科技:StarRocks + Paimon撑起秋天第一波奶茶自由

阿里云大数据AI技术

阿里云 饿了么 StarRocks 物化视图 湖仓

避坑指南:1688商品详情API采集及常见错误码

tbapi

1688商品详情接口 1688API 1688商品数据采集 1688商品详情API 1688数据分析

RingCentral收购CommunityWFM 以AI优先的人力管理方案拓展RingCX产品矩阵

财见

台达ESG报告连续五年获得五星佳评级 引领价值链迈向零碳可持续未来

财见

关于复杂事件处理和事件驱动架构的争论_SOA_Steven Robbins_InfoQ精选文章