The New ESB RESTy, Connected, Collaborative, and Optimized Kasun Indrasiri Software Architect
May 20, 2015
The New ESBRESTy, Connected, Collaborative, and Optimized
Kasun IndrasiriSoftware ArchitectWSO2
Agenda
• Connected Business – Integration Aspects
• WSO2 ESB in a nutshell • Retrospect - WSO2 ESB in 2013 • Cloud Connectors • RESTful Integration made easy• New Features and Enhancements • Enhanced Tooling Support • WSO2 Integration Platform • Roadmap
Building A ‘Connected Business’
• Building an internally integrated enterprise / externally integrated enterprises
Building A ‘Connected Business’
• ‘Integration’ plays a vital role.
Glimpse of Modern Enterprises
• Dynamic/Diverse Business Requirements
• No single vendor/No single solution • Legacy Systems – Cannot get rid of
them?• Cloud APIs
Point to Point/Spaghetti Integration
• Scalability, maintainability, troubleshooting?
ESB as the Integration Bus
WSO2 ESB in a Nutshell
• A light weight, high performance ESB
• Configuration driven • REST, SOAP, WS-* support • SAP, FIX, HL7 support • Extensible and Scalable
EIP Support
• Fully Support all the standard EIPs [1]
Retrospect - WSO2 ESB in 2013
• WSO2 ESB 4.6● Revolutionized the ESB performance
WSO2 ESB 4.7 ● Comprehensive RESTful Integration support
• WSO2 ESB 4.8 – (GA mid-Nov 2013)● Introducing ‘Cloud Connectors’
WSO2 ESB – Cloud Connectors
• The foundation of ‘Cloud to Cloud’ and ‘Cloud to Enterprise’ Integration
• Connecting disparate Cloud APIs, mobile and on-premise systems
WSO2 ESB – Cloud Connectors
• ‘Cloud to Cloud’ Integration
WSO2 ESB – Cloud Connectors
• ‘Cloud to Enterprise’ Integration
Cloud Connector Architecture
• A cloud connector simplifies the invocation of any cloud api and hides all the low level invocation details.
• Self Contained and independent from ESB code
• Can be dynamically plug in to ESB • Can be implemented with
● ESB config language(as templates) ● an existing Java Library ● Java Script
Cloud Connector Architecture
• Dynamic ESB Configuration
<salesforce.config> <username>[email protected]</username> <password>{wso2:vault-lookup('kasun.sf.pwd')}</password> <loginUrl>https://login.salesforce.com/services/Soap/u/27.0</loginUrl></salesforce.config>
<salesforce.query> <batchSize>200</batchSize> <queryString>select Account.Name,Opportunity.Name, Amount from
Opportunity</queryString></salesforce.query><log level="full"/>
Connector name Template name
Param list
Cloud Connector Architecture
• Dynamic Tooling Support
Cloud Connectors – Use Cases
• Salesforce + Twilio – Lead Generation
Cloud Connectors – Use Cases
• Salesforce + Google Spread Sheet – Opportunity Management
Cloud Connectors – Use Cases
• Salesforce + JIRA + Twilio – Support Account Management
Cloud Connectors – Use Cases
• Twitter + Salesforce – Lead Monitor
RESTful Integration made easy
• Comprehensive RESTful Integration support
● Nouns and Verbs – HTTP Endpoint, Header Mediator
● Data Formats – Payload Factory (XML/JSON)
source: http://www.ansoncheunghk.info/article/web-apis-resource-oriented-architecture
Better JSON Support
• JSON Transformations● Payload Factory supports all possible combinations
of JSON and XML transformations
JSON CBR High Performance JSON parsing
Message Mediation Enhancements
• Call Mediator● Blocking service calls on top of non-blocking HTTP
transport ● Simplifies the Service Orchestration scenarios ● Used in Cloud Connectors ● Equivalent performance to the Send Mediator
Respond and LoopBack Mediators
Store and Forward
• Complete Revamp of Message Store and Processors
● Multiple Consumers (Processors) for a given store● Guaranteed Delivery for RESTful Integration● Supports security, sampling and error codes
WSO2 ESB Graphical Editor
• WSO2 Developer Studio
WSO2 Integration Platform – Use Cases
WSO2 Integration Platform – Use Cases
WSO2 ESB – Road Map
• Inbound Transport/Polling Transports • Data Mapping• HL7 • Performance • Versioning ESB artifacts (sequence,
proxy services etc.)
Links
• [1] EIP Guide - http://docs.wso2.org/display/IntegrationPatterns/Enterprise+Integration+Patterns+with+WSO2+ESB
• [2] ESB Performance Comparisons – WSO2 http://wso2.com/library/articles/2013/01/esb-performance-65/
Thank You