delivering the promise of soa - enterprise integration made easy

23
Dushan Abeyruwan Senior Software Engineer WSO2 ESB February 2012 Delivering the Promise of SOA - Enterprise Integration Made Easy WSO2 ESB

Upload: wso2

Post on 14-Jun-2015

795 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Delivering the Promise of SOA - Enterprise Integration Made Easy

Dushan Abeyruwan Senior Software Engineer WSO2 ESB February 2012

Delivering the Promise of SOA - Enterprise Integration

Made Easy WSO2 ESB

Page 2: Delivering the Promise of SOA - Enterprise Integration Made Easy

Overview

Introduction Demo 1

EIP Service chaninig /Split/Aggregate (Agent request service)

Demo 2 EIP Store and Process (Agent registration process)

Page 3: Delivering the Promise of SOA - Enterprise Integration Made Easy

WSO2

• Founded in 2005 by acknowledged leaders in XML, Web Services Technologies & Standards and Open Source

• Producing entire middleware platform 100% open source under Apache license

• Business model is to sell comprehensive support & maintenance for our products

• Venture funded by Intel Capital

• Global corporation with offices in USA, UK & Sri Lanka

• 100+ employees and growing

Page 4: Delivering the Promise of SOA - Enterprise Integration Made Easy

SOA & ESB

• SOA The underlying structure supporting communication

between services • ESB

ESB is considered as the backbone of a robust SOA It integrates all the internal systems as well as external

systems of the enterprise

Page 5: Delivering the Promise of SOA - Enterprise Integration Made Easy

(EAI)Enterprise Application Integration

Java

J2EE

.NET

SOAP

Weblogic SAP

Page 6: Delivering the Promise of SOA - Enterprise Integration Made Easy

EAI Enterprise Application Integration

Page 7: Delivering the Promise of SOA - Enterprise Integration Made Easy

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

Page 8: Delivering the Promise of SOA - Enterprise Integration Made Easy

Heterogeneous service integration

Comprehensive WS Specs and SOAP support HTTP/SwithREST/POX Adapters for various IndustryStandards

SAP Financial Informatione Xchange(FIX) Health Level7(HL7)

VFS(File/FTP/SFTP) JMS SMTP SMS

Page 9: Delivering the Promise of SOA - Enterprise Integration Made Easy

WSO2 ESB Components–In a nutshell..

Messaging and service Mediation Managing and transforming messages Mediating messages coming in to the specific proxy hosted on ESB

Mediators Simplest function of component Performs predefined function given on message

Sequences Sequential arrangement of mediators

Proxy Services Hosting proxy services in ESB Protocol switching and QoS

End Points A logical representation of an actual end points, or else collection of

end points wrapped within some logic

Page 10: Delivering the Promise of SOA - Enterprise Integration Made Easy

EIP Patterns with ESB

Page 11: Delivering the Promise of SOA - Enterprise Integration Made Easy

EIP Patterns with ESB

Page 12: Delivering the Promise of SOA - Enterprise Integration Made Easy

Service Chaining

• Invoke multiple backend services in a chain fashion for a single client request

• Response of first backend invocation can be used as request of second backend invocation.. And so on…

• Conditional chaining based on responses of backed services

Service 1

Service 2

Service 3

Request - Response

Request - Response

Request - Response

Page 13: Delivering the Promise of SOA - Enterprise Integration Made Easy

Agent Requesting Life Insurance Policy Detail scenario

Agent Validate

Agent ID

Valid/Invalid

Life Insurance Customer service

Agent ID

Agent own customer info

Customer Policies Service

Client ID

Agent Request

Response

•Check Agent validity

•Requesting Clients info per Agent

•Perform transfer

•Requesting policies per customer

•Perform transfer

•Policies for customer

Page 14: Delivering the Promise of SOA - Enterprise Integration Made Easy

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

Page 15: Delivering the Promise of SOA - Enterprise Integration Made Easy

Split

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <s:symbols xmlns:s="http://demo.wso2.org"> <s:symbol>ABC</s:symbol> <s:symbol>PQR</s:symbol> <s:symbol>XYZ</s:symbol> </s:symbols> </soapenv:Body> </soapenv:Envelope>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <s:symbol xmlns:s="http://demo.wso2.org">ABC</s:symbol> </soapenv:Body> </soapenv:Envelope>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <s:symbol xmlns:s="http://demo.wso2.org">XYZ</s:symbol> </soapenv:Body> </soapenv:Envelope>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <s:symbol xmlns:s="http://demo.wso2.org">PQR</s:symbol> </soapenv:Body> </soapenv:Envelope>

Page 16: Delivering the Promise of SOA - Enterprise Integration Made Easy

Aggregate

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <s:symbols xmlns:s="http://demo.wso2.org"> <s:symbol>ABC</s:symbol> <s:symbol>PQR</s:symbol> <s:symbol>XYZ</s:symbol> </s:symbols> </soapenv:Body> </soapenv:Envelope>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <s:symbol xmlns:s="http://demo.wso2.org">ABC</s:symbol> </soapenv:Body> </soapenv:Envelope>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <s:symbol xmlns:s="http://demo.wso2.org">XYZ</s:symbol> </soapenv:Body> </soapenv:Envelope>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <s:symbol xmlns:s="http://demo.wso2.org">PQR</s:symbol> </soapenv:Body> </soapenv:Envelope>

Page 17: Delivering the Promise of SOA - Enterprise Integration Made Easy
Page 18: Delivering the Promise of SOA - Enterprise Integration Made Easy

Dead Letter Channel

• Push failed message into a message store if sending failed • Automatic/Manual retry using Forwarding message processor • Resembles to “dead letter channel” EIP

Page 19: Delivering the Promise of SOA - Enterprise Integration Made Easy

Agent Registration process

User Register Service

Request Agent Register Request Agent Register

Invoke UeserRegister Proxy

MessageStroe

MessageStroe Processor

Page 20: Delivering the Promise of SOA - Enterprise Integration Made Easy

Q&A

Page 21: Delivering the Promise of SOA - Enterprise Integration Made Easy

Selected Customers

Page 22: Delivering the Promise of SOA - Enterprise Integration Made Easy

WSO2 engagement model

• QuickStart

• Development Support

• Development Services

• Production Support

• Turnkey Solutions

• WSO2 Mobile Services Solution

• WSO2 FIX Gateway Solution

• WSO2 SAP Gateway Solution

Page 23: Delivering the Promise of SOA - Enterprise Integration Made Easy

Thank You.