„Enterprise Event Bus“ Unified Log (Event) Processing Architecture
Event based Enterprise Service Bus
description
Transcript of Event based Enterprise Service Bus
Event based Enterprise Service Bus
Kasun Indrasiri128213M
Supervised by:Dr. Srinath Perera Dr. Sanjiva Weerawarna
Introduction• Increasing adaptation of Service Oriented Architecture(SOA)
for Enterprise Applications.• Enterprise Service Bus(ESB) becomes the de facto integration
solution for most of the Enterprise Integration problems. • Complex Event Processing(CEP) engines also becoming
increasingly popular - high demand for real time processing of moving data.
• This research project is an effort to implement • A light weight Enterprise Service Bus(ESB) based on the Even
Stream Processing Architecture.
Research Context• Service Oriented Architecture (SOA)• A style of software architecture that is modular, distributed and
loosely coupled.• Componentization – The main driver of SOA• Business Functionalities are implemented in different Business
Components• Business Components provide their functionality to its consumers
as a ‘Service’ with the well-defined service interfaces.
Research Context• Enterprise Service Bus (ESB)• An ESB is a middleware solution that enables interoperability among
heterogeneous environments using a service-oriented model.• Stateless and Seamless Integration• Standard Protocols – SOAP, REST, JSON etc.• Transports – HTTP/S, JMS, TCP etc.
Source : http://graegert.com/programming/no-soa-criticism-somewhere
Research Context• Complex Even Processing (CEP)• Real-time processing of an avalanche of moving data• CEP Engine : Evaluates the queries provided from a given user and
match those queries against continuous event streams and trigger an event when the conditions mentioned in the queries are satisfied.
• CEP in action• Reacting to data collected from weather sensors, battlefield control,
traffic control etc.
Siddhi – A CEP Engine• A high performance CEP Engine.• Ability of processing huge flood of events that may go well
over one hundred thousand events per second with a near-zero latency. [1]
Siddhi – A CEP Engine• Faster than Esper [1]
Research Problem and Objectives
• Implementation of a light weight ESB based on Event Streaming Architecture
• Best of both worlds : ESB and CEP• Objectives:• Event Streaming Architecture for an ESB• Mediation Logic based on a Query Language (such as Siddhi)• Use high performance non-blocking IO (Java NIO) for HTTP
transports
Proposed Approach• Implementing an ESB based on top of a CEP engine (Siddhi)
Mediation Language Compiler
Mediation Lnaguage
JMS
HTTP/S
VFS
BusinessAdapters
JMS
HTTP/S
VFS
BusinessAdapters
Input Adapters
TransportListeners
TransportSenders
Output AdaptersMediation Engine
Proposed Approach• Mediation Engine• Based on Siddhi-Core
• Mediation Logic• A new query language for Siddhi.
• Non Blocking Transport Listeners and Senders (HTTP/S)
Scope and Constrains• An ESB caters huge amount of integration requirements• A lightweight ESB with predefine set of requirements• Pass-Thru : ESB purely acts as the bridge between client and
server• Content Based Routing• Non blocking HTTP/S• Basic Message Types – SOAP/REST• Stateless
References
[1] S. Suhothayan, Isuru Loku Narangoda C. Subash, K. Gajasinghe, Srinath Perera, Vishaka Nanayakkara, "Siddhi: A Second Look at Complex Event Processing," in GCE '11, New York, 2011. [2] L. Garc´es-Erice, Building an Enterprise Service Bus for Real-Time SOA: A Messaging Middleware Stack. 33rd Annual IEEE International Computer Software and Applications Conference, 2009.[3] Payam Nabhani, Amir Massoud Bidgoli, Intelligent Conceptual Message Routing in Enterprise Service Bus (ESB). International Conference on Convergence and Hybrid Information Technology, Washington, DC. 2008.
QnA
Thank You