| By Prabhu Balashanmugam, Yanbing Lu | Article Rating: |
|
| August 28, 2008 12:45 PM EDT | Reads: |
5,210 |
Three-letter acronyms (TLAs) are hardly new in Information Technology: EAI, ESB, SOA, BPM, BAM, ETL, MDM; the list goes on and on. This article is about yet another three-letter acronym, EDA, which stands for Event-Driven Architecture. EDA is not a brand new technology, but rather a proven paradigm in system-level programs, war and military simulator applications, gaming, and other areas. EDA has started to shape how general-purpose business applications are architected.
This article explores the relationship between EDA and business applications, explains the technical background, and provides implementation details of a sample use case.
Business Applications and EDA
Despite efforts to simplify the IT infrastructure for medium and large enterprises, this area often becomes fragmented and disparate. This problem is prevalent in fast-growing business environments, as the rate at which new business functions and business decisions are automated surpasses the rate at which the infrastructure evolves. In some cases, the evolution of the infrastructure creates new opportunities to enhance alignment with business operations. These challenges are usually positive, because they indicate the growth and increasing relevance of IT with business.
Business intelligence is one of the tools used by businesses to differentiate themselves from the competition and to understand threats. Traditionally, business intelligence was generally gathered by analyzing past business data to predict business opportunities or threats and necessary adjustments were made to the system. Although the need for traditional approaches is not going away, a new set of challenges has emerged where the timing of the business intelligence is more important than its accuracy. In other words, the value of any given intelligence significantly erodes with time, in some cases in seconds. This development creates the need for a system that can process business events as they occur and respond to opportunities and threats in real-time.
This system should be based on an event-driven architecture that receives and analyzes events from multiple sources in real-time and takes outbound actions as needed. This system should be layered alongside a variety of existing architectures and systems: SOA, ESB, EAI, packaged applications, and so forth.
Technical Overview
Traditional applications follow a simple "Request Response" model, where a new thread or process instance is created to process every incoming request, and a response is sent back either immediately (synchronous mode) or at an indeterminate point in the future (asynchronous mode). Event-driven applications follow a radically different model for processing messages: The Event Processing model discussed in this article processes messages from multiple sources received over a period of time in a single engine and respond based pre-defined business logic. This model is suitable for processing event streams, and applications following this model are sometimes called event stream processors. Event-driven applications perform three broad types of functions:
- Listen to streams* *of events from multiple sources over time
- Filter, sort, correlate, aggregate, and process to identify items of interest
- Take outbound actions when necessary. Outbound actions include updating a dashboard, sending alerts, and triggering a service (see Figure 1)
Published August 28, 2008 Reads 5,210
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Prabhu Balashanmugam
Prabhu Balashanmugam is a Product Manager for SOA and Business Integration software at Sun Microsystems. He is currently responsible for managing Business Process Management, Event Processor, and Data Integrator products. He has more than 10 years of experience in the software industry in roles that include product management, development, pre-sales, and technology consulting.
More Stories By Yanbing Lu
Yanbing Lu is the architect for Complex Event Processing at Sun Microsystems, Inc. He has more than 15 years of experience in the Enterprise Software industry in technical leadership and architectural roles.
- An Exclusive Interview with Oracle, Cloud Expo 2010 Diamond Sponsor
- Whatever the Apple iPad Is, It Apparently Leaks Like a Sieve
- Whatever Happened to JAAS?
- What’s Next for Oracle-Sun?
- Cloud Expo New York Call for Papers to Expire January 15, 2010
- Six Enterprise Megatrends to Watch in 2010
- Oracle Maps Its Cloud Computing Strategy During Cloud Expo Keynote
- Oracle’s Next Sun Hurdle
- Oracle Claims Victory Over EC; Says Sun Will Sell Clouds
- Now Russia Threatens to Hold Up Oracle-Sun Deal
- Free Virtual Appliance for Cloud Computing
- Why Cops and Java Developers Have Low Salaries?
- Kindle 2 vs Nook
- Cloud Expo New York Call for Papers Now Open
- Is Cloud Computing Like Teenage Sex?
- An Exclusive Interview with Oracle, Cloud Expo 2010 Diamond Sponsor
- Performance Tuning Essentials for Java
- Whatever the Apple iPad Is, It Apparently Leaks Like a Sieve
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Whatever Happened to JAAS?
- Cloud Computing Can Revitalize Your Career as Software Developer
- What’s Next for Oracle-Sun?
- Cloud Expo New York Call for Papers to Expire January 15, 2010
- The End of IT 1.0 As We Know It Has Begun
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?

























