Webbinar slides
Transcript of Webbinar slides
![Page 1: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/1.jpg)
Isuru UdanaSoftware EngineerWSO2 Inc.
Enterprise Integration with the WSO2 ESB
An Introduction to the Fundamentals
Pamod SylvesterSoftware EngineerWSO2 Inc.
![Page 2: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/2.jpg)
About WSO2
• Providing the only complete open source componentized cloud platform
– Dedicated to removing all the stumbling blocks to enterprise agility– Enabling you to focus on business logic and business value
• Recognized by leading analyst firms as visionaries and leaders– Gartner cites WSO2 as visionaries in all 3 categories of application
infrastructure– Forrester places WSO2 in top 2 for API Management
• Global corporation with offices in USA, UK & Sri Lanka– 200+ employees and growing
• Business model of selling comprehensive support & maintenance for our products
![Page 3: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/3.jpg)
150+ globally positioned support customers
![Page 4: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/4.jpg)
• SOA and the role of ESBs.
• WSO2 ESB features and applicability.
• Benefits of using an ESB.
• High level architecture of the WSO2 ESB.
• Enterprise Integration Patterns (EIP) .
• Implimentation of EIPs using the WSO2 ESB.
Agenda
![Page 5: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/5.jpg)
Role of ESB
• Why ESB? – Modern Enterprises• Comprised of so many Systems and Services • built based on open standards, custom-built, acquired from a
third party, part of a legacy system or any such combination– Integration • Organizations move away from monolithic systems • Multiple Systems connected via SOA as the blue print
Source : http://bonfirehealth.com/week-13-insights-spark-integration/
![Page 6: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/6.jpg)
Role of ESB
• Why ESB? – Spaghetti Integration Dilemma
• How about ?– maintainability, scalability, troubleshooting and governance etc.
![Page 7: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/7.jpg)
Role of ESB
• Why ESB? – ESB – The standard infrastructure to implement the SOA
![Page 8: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/8.jpg)
Role of ESB
• 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, VFS etc.
Source : http://graegert.com/programming/no-soa-criticism-somewhere
![Page 9: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/9.jpg)
WSO2 ESB is…
• A lightweight, high performance ESB• Feature rich and standards compliant– SOAP and WS-* standards– REST support– Domain specific protocol support (eg: FIX, HL7)
• User friendly and highly extensible• 100% free and open source with commercial
support
![Page 10: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/10.jpg)
Under the Hood: Apache Synapse
• A lightweight, open source ESB implementation from the
ASF : http://synapse.apache.org
• Makes up the mediation engine of WSO2 ESB
• Multithreaded and asynchronous message processing core
• Based on a number of well known open source projects (eg:
Axis2, Http Core)
![Page 11: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/11.jpg)
Under the Hood: WSO2 Carbon
• An OSGi based components framework for SOA
• Extensive modularity and reusability
• Easily add, remove and customize features
– Similar to Eclipse plug-ins
• Easily deploy third party libraries and custom code
into the server runtime
• Web based management console
![Page 12: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/12.jpg)
ESB Functional Components●Mediators
●Sequences
●Endpoints
●Proxy Services
●Tasks
●REST API
●Message Stores
and Processors
●Local Entries
●Registry
●Templates
![Page 13: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/13.jpg)
More on Functional Components
• Each functional component serves a specific purpose• Functional components can be mixed and matched
to implement various integration scenarios and patterns
• Configuring WSO2 ESB for a given scenario requires:– Identifying the right set of components– Putting them together in the optimal manner
![Page 14: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/14.jpg)
Mediators
![Page 15: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/15.jpg)
Sequences
• A chain of mediators• Messages are sent through all the
mediators in the sequence, in the order they appear
![Page 16: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/16.jpg)
Endpoints
• A logical entity to which messages can be sent from the ESB– A service endpoint reference (EPR)– A JMS queue– A FIX session
• Various operational and QoS constraints can be engaged on an endpoint– SOAP version– WS-Security
![Page 17: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/17.jpg)
Proxy Services
![Page 18: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/18.jpg)
REST API
• Exposing RESTful APIs • An easy way to expose existing SOAP services over REST
• REST SOAP conversion
![Page 19: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/19.jpg)
Message Store and Processors
• Message Store Storage for ESB messages In-memory, JMS
• Message Processors Consume the messages in message stores and
do the processing of them
![Page 20: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/20.jpg)
Why Store and Forward?
• Matching Request Rates
• Guaranteed Delivery
![Page 21: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/21.jpg)
Templates
• With complex business requirements, ESB config can grow bigger..
• Need a way to reuse the configuration
• WSO2 ESB 4.0 introduces – Templates
![Page 22: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/22.jpg)
Configuring the ESB
• The task of laying out and connecting the ESB functional components
• Done using Synapse configuration language (XML based)
• WSO2 ESB makes the job easier by providing a set of UI wizards and graphical tools
• Equivalent to programming in many ways
![Page 23: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/23.jpg)
An Example Configuration
![Page 24: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/24.jpg)
Developer Studio
![Page 25: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/25.jpg)
Modes of Operation
• WSO2 ESB supports 4 modes of operation– Message mediation (ESB as a message router)
– Service mediation (Expose service endpoints on ESB)
– Task scheduling (Run periodic tasks on ESB)
– Eventing (ESB as an event broker)• Most real world scenarios require the ESB to
operate in multiple modes at the same time
![Page 26: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/26.jpg)
Key Features: Routing
![Page 27: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/27.jpg)
Key Features: Filtering
![Page 28: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/28.jpg)
Key Features: Transformation
![Page 29: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/29.jpg)
Key Features: Protocol Switching
![Page 30: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/30.jpg)
Key Features: Load Balancing
![Page 31: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/31.jpg)
Key Features: QoS
![Page 32: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/32.jpg)
Supported Protocols/Standards
• Transports– HTTP/S, POP/IMAP, SMTP, JMS, AMQP, FIX, Raw TCP, Raw UDP,
SAP, File transports (FTP/SFTP/CIFS)
• Content Interchange Formats– SOAP 1.1, SOAP 1.2, POX, HTML, Plain text, binary, JSON, Hessian
• WS-* Standards– WS-Addressing, WS-Security, WS-Reliable Messaging, WS-Policy,
WS-Discovery, MTOM/SwA
![Page 33: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/33.jpg)
WSO2 ESB Also Supports…
![Page 34: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/34.jpg)
WSO2 ESB In Action
![Page 35: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/35.jpg)
High Level Architecture
![Page 36: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/36.jpg)
Enterprise Integration Patterns (EIP) • Enterprise functionalities are decomposed and
exposed as services.
• Maintaining solid integration among services is
apparent.
• There are different modes of integration
• EIPs provide standardized architectural solutions for
integration needs
• Refer : http://www.eaipatterns.com/ for pattern
definitions
![Page 37: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/37.jpg)
WSO2 ESB EIP Support
• Visit :
http://docs.wso2.org/wiki/display/IntegrationPatterns/Enterprise+Inte
gration+Patterns+with+WSO2+ESB
![Page 38: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/38.jpg)
Content Based Routing (CBR)
Bar Service
Foo Service Foo
Request
Bar Request
CBR Proxy
![Page 39: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/39.jpg)
Guaranteed Delivery
Stock Holder Request
WSO2 ESB Stock Holder Inventory
Status :Off-line
Message Store
Stock Holder Inventory
Status :On line Message Processor
![Page 40: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/40.jpg)
Questions
![Page 41: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/41.jpg)
Engage with WSO2
• Helping you get the most out of your deployments• From project evaluation and inception to development
and going into production, WSO2 is your partner in ensuring 100% project success
![Page 42: Webbinar slides](https://reader033.fdocuments.us/reader033/viewer/2022060117/5586db08d8b42a51718b46f0/html5/thumbnails/42.jpg)
Thank You