Building Blocks of Enterprise Integration

Preview:

Citation preview

Udayanga Wickramasinghe Software Engineer WSO2 ESB March 2012

Building Blocks of Enterprise Integration

Overview

• Introduction

• Demo1 – Message routing using a Recipient List

• Demo 2 – Message notifications with Eventing

• Demo 3 – Split aggregate using Templates

What is EAI ? “an integration framework composed of a collection of technologies

and services which form a middleware to enable integration of systems and applications across the enterprise”

• Collection of patterns for interconnecting systems efficiently for commonly recurring integration problems

simplify system integration

automate business processes

reduce management complexity (ie:-cost, monitoring)

ESB and EAI ?

CRM HRM

Applications

Data servers

Legacy

ESB and EAI ?

CRM

HRM

Applications

Data servers

Legacy

Introducing WSO2 ESB...

• Based on WSO2 Carbon (Modular Middleware) and Apache Synapse

• Designed to be asynchronous o Based on Synapse core with non blocking I/O

• Open source with commercial support o Apache Software License v2.0

• Rich collection of built-in features supporting

any integration scenario or EIP

• Customizable by adding/removing features

WSO2 ESB Components – In a nutshell..

• Message and Service Mediation Managing and transforming messages Mediating messages coming into a specific proxy service

hosted on ESB

• Mediators Simplest functional component. Performs a predefined action on a given message

• Sequences Sequential arrangement of mediators

• Proxy Services Hosting proxy services inside ESB Protocol switching and QoS

• Endpoints A logical representation of an actual endpoint, or else a

collection of endpoints wrapped within some logic.

• Wire Tap

• Content Based Router

• Message Filter

• Message Store

EIP Patterns Definitions

EIP Patterns with ESB

• Envelope Wrapper

• Normalize

• Recipient List

EIP Pattern Definitions

• Routing Slip

• Pubsub

EIP Pattern Definitions

/media/FREEAGENT G/webinar_03_01/EIP_webinar_03_01/imgs/RoutingTableSimple.gif

EIP Pattern Scenarios – Transform

• Protocol Transformation

• Ie:-http FIX

• Format Transformation – schema based

• Content Transformation

• Ie:- message enrichment

EIP Pattern Scenarios – Event Bus

• Publish-Subscribe Architecture

• ESB acting as the event broker

• Multiple subscribers/publishers

• Subscribe to topics

• Both WS Eventing and JMS support

• Support different connectors for Integration

• HTTP/S with REST/POX • Adapters for various Industry Standards

• SAP • Financial Information eXchange (FIX) • Health Level 7(HL7)

• JMS • SMTP • SMS

EIP Pattern Scenarios – Adapters

Demo #1 – a Recipient List

• Send a request to multiple endpoints

• dynamically decide the recipients

Recipient 1 Request

Recipient 2 Request

Recipient n

Request

……

Send Student Results Scenario

Student Desk

Student ID

Registered Institutions

Recipient Endpoint

Results

Student ID •Get registered Institutions/results

•Calculate recipient list

•Send to recipients

Institute A

Institute B

Institute C

Demo #2 – Pubsub with Eventing

• Event Subscribers subscribe to Topics • Flat/ hierachical subscriptions • JMS/WS eventing

• Event publishers ESB event sink notify subscribers

Send Student Results – Notifications Scenario

subscribe

Student ID - <EVENT> •Construct Message

Institute A

Institute B

Institute C

•Publish events Results

Demo #3 - Message Splitting and Aggregation

• Request consists of multiple elements which can process individually

• Collect and store individual messages until a complete set of related messages has been received.

• Create a single message distilled from the individual messages

• With complex business requirements, ESB config can grow bigger..

• Need a way to reuse the configuration

• WSO2 ESB 4.0 introduces – Templates

• An analogy… classes vs instances

Templates

Scatter-Gather With Templates

PaymentService Request Payments

Collated Response

•Scatter/Gather

StockQuoteService

Request Quotes

Collated Response •Scatter/Gather

url, payments

url, quotes

How would a Enterprise Solution look like?

Q&A

Selected Customers

WSO2 engagement model

• QuickStart

• Development Support

• Development Services

• Production Support

• Turnkey Solutions

• WSO2 Mobile Services Solution

• WSO2 FIX Gateway Solution

• WSO2 SAP Gateway Solution

Thank You.

Recommended