EDA (Event-driven Architecture)
Just as many IT shops are starting to get their arms around the service-oriented architecture (SOA) approach now that Web services standards are emerging, there's already a “next big thing” on the development horizon, according to Gartner Inc.
Four years from now, “mere mortals” will begin to adopt an event-driven architecture (EDA) for the sort of complex event processing that has been attempted only by software gurus building operating systems or systems management tools, and sophisticated developers at financial institutions, predicted Roy Schulte, an analyst at Gartner.
Fortunately for IT shops, the EDA approach is complementary to SOA, which forward-thinking IT shops are starting to employ in greater numbers as they forge ahead with Web services. Taking an SOA-based approach, developers build an application by assembling “services,” or software components that define reusable business functions.
One of the main advantages of the SOA approach is that by building standards-based interfaces between components, developers can incrementally construct applications and swap out, reuse and modify components without having to concern themselves with their inner workings. Those who build Web services typically describe the interfaces using the Web Services Definition Language and send XML-based messages between components using SOAP over HTTP.
But connecting services occurs in a linear, predictable sequence, whereas an event-driven architecture allows for multiple, less predictable, asynchronous events to happen in parallel and trigger a single action.
Simple event-driven processing has been in common use for at least 10 years with technology such as IBM's message-oriented middleware and message-driven Enterprise JavaBeans.
But Schulte predicted that complex event processing (CEP) will start to become mainstream in 2007, as application developers and systems and business analysts strive to do more business in real time. Paving the way for the trend will be faster networks, the arrival of general-purpose event management software tools and the emergence of standards for event processing beginning in 2005.
David Luckham, a professor of electrical engineering at Stanford University and author of a book on CEP, The Power of Events, said the goal of CEP is rather simple: delivering understandable information about what's happening in IT systems. That information, in turn, can be used for a variety of purposes, such as detecting unusual activity, improving security and recognizing advantageous scenarios in CRM and supply-chain systems.
“The events in IT systems contain untapped information. CEP lets you extract it and use it in ways you want to,” he said.
Luckham predicted that CEP will start creeping into Web services, middleware and application servers in 2005. By 2008, he foresees the emergence of CEP standards, languages and complex event-pattern search engines. Ubiquity of CEP will come in 2012, he forecasted.
To prepare for EDA, Schulte advised companies to look at their application requirements to see if there are places where they could do simple event processing instead of SOA to design part of an application. Leading-edge companies should also look to implement complex event processing for applications that bring a competitive advantage.
参考译文
EDA(事件驱动架构)
据 Gartner公司的分析,随着Web Services标准的出现而更多的公司开始拥抱面向服务架构(SOA),在开发的地平线上已经出现了“下一个大家伙”。
Garnter公司的分析师Roy Schulte预测,今后四年中,“小小的死东西”也将采纳EDA用于那些今天只有开发操作系统或系统管理工具的软件巨头们和金融机构中的资深开发者才敢尝试的复杂事件处理。
对于 IT部门来说幸运的是,EDA方法与SOA是互补的,随着具有前瞻思想的IT部门伴随Web Services向前进时,他们开始更多地采用此方法。采用基于SOA的方法,开发者通过将那些定义可重复用业务功能的“服务”或软件部件组装起来,就能构建应用程序。
SOA方法的主要优点之一,通过构建部件之间基于标准的接口,开发者就能不断编制应用程序,在无需关心部件内部工作的情况下交换、重复使用和修改部件。那些构建Web Services的开发者通常用Web Services定义语言描述接口,以及在部件之间利用在HTTP上的SOAP(简单对象接入协议)发送基于XML的消息。
但是连接服务是以线性的可预测顺序发生的,而事件驱动架构允许多个不大可预测的异步事件并行地发生和触发单一动作。
利用诸如 IBM面向消息中间件和消息驱动Enterprise JavaBeans等技术,简单的事件驱动处理已经广泛使用至少有10年。
但是 Schulte预测,随着应用开发者和系统与业务分析师努力争取实时地做更多业务,复杂事件处理(CEP)到2007年将开始成为主流。更快的网络、通用事件管理软件工具的到来、以及2005年开始出现事件处理标准,为此趋势铺平了道路。
斯丹福大学电气工程教授和有关 CEP的《The Power of Events》一书的作者David Luchham称,CEP的目标是相当简单的:递交有关IT系统中正在发生着什么的信息。该信息反过来又能用于各种不同的目的,如检测不寻常的活动、改进安全、以及重组CRM(客户关系管理)和供应链系统中优势的情景。
他说: “IT系统中包含了未触动的信息。CEP让你将它们提取出来,依你想要用的方式使用它们。”
Luchham预测,CEP将在2005年进入Web Services、中间件和应用服务器。到2008年,他预言将出现CEP的标准、语言和复杂事件模式搜索引擎。他预计,到2012年CEP将普及。
为了迎接 EDA,Schulte建议各公司检查一下他们的应用要求,看看是否能用简单的事件处理代替SOA,以设计应用程序的一部分。公司也应该看看为能带来竞争优势的应用程序实现复杂的事件处理。