SlideShare a Scribd company logo

Wso2 integration platform deep dive eu con 2016

WSO2 Integration platform and it's capabilities introduced by Chanaka Fernando and Ramith Jayasinghe during WSO2 Con EU 2016.

1 of 72
Download to read offline
WSO2 Integration Platform Deep
Dive
Chanaka Fernando - Senior Technical Lead
Ramith Jayasinghe - Senior Technical Lead
Agenda
• Concepts in Integration
• Demonstration
• Product roadmaps/features
• Q&A
Evolution of Integration
Point to Point Integration
● Custom code, data formats for
majority of integration ( data
extraction, business rule
processing, data loading)
● Costly over time (maintenance,
complexity)
● Tight Coupling
● Scalability is an issue
● Less reusability
Evolution of Integration
Use of Enterprise Service Bus ● Consistency: Clear set of guidelines
(EIPs) results in repeatable and
successful integration
efforts/projects.
● Reusability: Tested and
preconfigured components provides
repeatable approach to
integration.(transports/connectors/m
ediators etc)
● Effectiveness: A common integration
framework (with related abstract
concepts) improves integration
developer's productivity.
Connected Business
An internally and externally connected business.
Image courtesy hRp://jdamico.net/wp-content/uploads/2010/04/collaborate-with-B2B-channel-partners.jpg
ESB were used to connect
internal systems in the past.
Current need is to connect
internal/external parties quickly
and flexible manner.
E.g. Employees, Internal/External
systems, Partners, Customers.
Connected Business
Integration is a key factor for having frictionless interactions, inside
and outside the organization.
Ad

Recommended

Wso2 con eu 2016 an introduction to the wso2 integration platform by chanak...
Wso2 con eu 2016   an introduction to the wso2 integration platform by chanak...Wso2 con eu 2016   an introduction to the wso2 integration platform by chanak...
Wso2 con eu 2016 an introduction to the wso2 integration platform by chanak...Chanaka Fernando
 
Wso2 esb-maintenance-guide
Wso2 esb-maintenance-guideWso2 esb-maintenance-guide
Wso2 esb-maintenance-guideChanaka Fernando
 
Introduction to WSO2 ESB Pass-Through Transport
Introduction to WSO2 ESB Pass-Through TransportIntroduction to WSO2 ESB Pass-Through Transport
Introduction to WSO2 ESB Pass-Through TransportChanaka Fernando
 
Mule esb and_relevant_components
Mule esb and_relevant_componentsMule esb and_relevant_components
Mule esb and_relevant_componentsPaaras Baru
 
WebServices SOAP WSDL and UDDI
WebServices SOAP WSDL and UDDIWebServices SOAP WSDL and UDDI
WebServices SOAP WSDL and UDDIRajkattamuri
 
IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction ejlp12
 

More Related Content

What's hot

Overview of Mule
Overview of MuleOverview of Mule
Overview of Mulemdfkhan625
 
Anypoint mq queues and exchanges
Anypoint mq queues and exchangesAnypoint mq queues and exchanges
Anypoint mq queues and exchangesSon Nguyen
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kitSon Nguyen
 
Mule database-connectors
Mule database-connectorsMule database-connectors
Mule database-connectorsPhaniu
 
WSDL in Mule Esb
WSDL in Mule EsbWSDL in Mule Esb
WSDL in Mule EsbAnand kalla
 
Wso2 esb 5.0.0 product release webinar
Wso2 esb 5.0.0   product release webinarWso2 esb 5.0.0   product release webinar
Wso2 esb 5.0.0 product release webinarChanaka Fernando
 
Mule concepts components
Mule concepts componentsMule concepts components
Mule concepts componentskunal vishe
 
Mule enterprise service introduction
Mule enterprise service introductionMule enterprise service introduction
Mule enterprise service introductionSon Nguyen
 
WebSphere Application Server Family (Editions Comparison)
WebSphere Application Server Family (Editions Comparison)WebSphere Application Server Family (Editions Comparison)
WebSphere Application Server Family (Editions Comparison)ejlp12
 
Introduction to RESTful Webservice
Introduction to RESTful WebserviceIntroduction to RESTful Webservice
Introduction to RESTful WebserviceEftakhairul Islam
 
Introduction to mule Esbs
Introduction to mule EsbsIntroduction to mule Esbs
Introduction to mule EsbsPrabhat gangwar
 
Exl393 exchange 2013 architecture schnoll (rm221)
Exl393 exchange 2013 architecture schnoll (rm221)Exl393 exchange 2013 architecture schnoll (rm221)
Exl393 exchange 2013 architecture schnoll (rm221)Khalid Al-Ghamdi
 

What's hot (20)

Overview of Mule
Overview of MuleOverview of Mule
Overview of Mule
 
Anypoint mq queues and exchanges
Anypoint mq queues and exchangesAnypoint mq queues and exchanges
Anypoint mq queues and exchanges
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kit
 
Sap
SapSap
Sap
 
Biztalk ESB Toolkit Demos
Biztalk ESB Toolkit DemosBiztalk ESB Toolkit Demos
Biztalk ESB Toolkit Demos
 
Upgrading to Exchange 2016
Upgrading to Exchange 2016Upgrading to Exchange 2016
Upgrading to Exchange 2016
 
Mule database-connectors
Mule database-connectorsMule database-connectors
Mule database-connectors
 
WSDL in Mule Esb
WSDL in Mule EsbWSDL in Mule Esb
WSDL in Mule Esb
 
Wso2 esb 5.0.0 product release webinar
Wso2 esb 5.0.0   product release webinarWso2 esb 5.0.0   product release webinar
Wso2 esb 5.0.0 product release webinar
 
Mule ESB Fundamentals
Mule ESB FundamentalsMule ESB Fundamentals
Mule ESB Fundamentals
 
Mule concepts components
Mule concepts componentsMule concepts components
Mule concepts components
 
Mule enterprise service introduction
Mule enterprise service introductionMule enterprise service introduction
Mule enterprise service introduction
 
Mule rabbit mq
Mule rabbit mqMule rabbit mq
Mule rabbit mq
 
Mule rabbitmq
Mule rabbitmqMule rabbitmq
Mule rabbitmq
 
WebSphere Application Server Family (Editions Comparison)
WebSphere Application Server Family (Editions Comparison)WebSphere Application Server Family (Editions Comparison)
WebSphere Application Server Family (Editions Comparison)
 
Exchange 2013 Migration & Coexistence
Exchange 2013 Migration & CoexistenceExchange 2013 Migration & Coexistence
Exchange 2013 Migration & Coexistence
 
Introduction to RESTful Webservice
Introduction to RESTful WebserviceIntroduction to RESTful Webservice
Introduction to RESTful Webservice
 
Introduction to mule Esbs
Introduction to mule EsbsIntroduction to mule Esbs
Introduction to mule Esbs
 
Mule soa
Mule soaMule soa
Mule soa
 
Exl393 exchange 2013 architecture schnoll (rm221)
Exl393 exchange 2013 architecture schnoll (rm221)Exl393 exchange 2013 architecture schnoll (rm221)
Exl393 exchange 2013 architecture schnoll (rm221)
 

Viewers also liked

Discover Data That Matters- Deep dive into WSO2 Analytics
Discover Data That Matters- Deep dive into WSO2 AnalyticsDiscover Data That Matters- Deep dive into WSO2 Analytics
Discover Data That Matters- Deep dive into WSO2 AnalyticsSriskandarajah Suhothayan
 
WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview Edgar Silva
 
WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2
WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2
WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2WSO2
 
WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...
WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...
WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...WSO2
 
WSO2Con USA 2017: DevOps Best Practices in 7 Steps
WSO2Con USA 2017: DevOps Best Practices in 7 StepsWSO2Con USA 2017: DevOps Best Practices in 7 Steps
WSO2Con USA 2017: DevOps Best Practices in 7 StepsWSO2
 
Implementing Private Clouds
Implementing Private CloudsImplementing Private Clouds
Implementing Private CloudsJohn Pritchard
 
Continuous Availability for Private Database Clouds
Continuous Availability for Private Database CloudsContinuous Availability for Private Database Clouds
Continuous Availability for Private Database CloudsNoel Sidebotham
 
MySQL DevOps at Outbrain
MySQL DevOps at OutbrainMySQL DevOps at Outbrain
MySQL DevOps at OutbrainShlomi Noach
 
RDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsRDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsLaine Campbell
 
Deploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on ContainersDeploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on ContainersImesh Gunaratne
 
Pluk2011 deploy-mysql-like-a-devops-sysadmin
Pluk2011 deploy-mysql-like-a-devops-sysadminPluk2011 deploy-mysql-like-a-devops-sysadmin
Pluk2011 deploy-mysql-like-a-devops-sysadminFrederic Descamps
 
Deploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on KubernetesDeploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on KubernetesImesh Gunaratne
 
OSS4B: Installing & Managing MySQL like a real devops
OSS4B: Installing & Managing MySQL like a real devopsOSS4B: Installing & Managing MySQL like a real devops
OSS4B: Installing & Managing MySQL like a real devopsFrederic Descamps
 
Nuxeo Enterprise Platform (Nuxeo EP) - Technical Overview
Nuxeo Enterprise Platform (Nuxeo EP) - Technical OverviewNuxeo Enterprise Platform (Nuxeo EP) - Technical Overview
Nuxeo Enterprise Platform (Nuxeo EP) - Technical OverviewNuxeo
 
Managing Engineering Information with Nuxeo
Managing Engineering Information with NuxeoManaging Engineering Information with Nuxeo
Managing Engineering Information with NuxeoNuxeo
 
Nuxeo Platform 7.4: What's New
Nuxeo Platform 7.4: What's NewNuxeo Platform 7.4: What's New
Nuxeo Platform 7.4: What's NewNuxeo
 
Nuxeo platform in 15mn
Nuxeo platform in 15mnNuxeo platform in 15mn
Nuxeo platform in 15mnNuxeo
 
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2
 

Viewers also liked (20)

Esb 4.9.0 release webinar
Esb 4.9.0 release webinarEsb 4.9.0 release webinar
Esb 4.9.0 release webinar
 
Wso2 esb-rest-integration
Wso2 esb-rest-integrationWso2 esb-rest-integration
Wso2 esb-rest-integration
 
Discover Data That Matters- Deep dive into WSO2 Analytics
Discover Data That Matters- Deep dive into WSO2 AnalyticsDiscover Data That Matters- Deep dive into WSO2 Analytics
Discover Data That Matters- Deep dive into WSO2 Analytics
 
WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview
 
WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2
WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2
WSO2Con USA 2017: WSO2 Partner Program – Engaging with WSO2
 
WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...
WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...
WSO2Con USA 2017: Integrating Systems for University of Exeter using Zero and...
 
WSO2Con USA 2017: DevOps Best Practices in 7 Steps
WSO2Con USA 2017: DevOps Best Practices in 7 StepsWSO2Con USA 2017: DevOps Best Practices in 7 Steps
WSO2Con USA 2017: DevOps Best Practices in 7 Steps
 
Implementing Private Clouds
Implementing Private CloudsImplementing Private Clouds
Implementing Private Clouds
 
Continuous Availability for Private Database Clouds
Continuous Availability for Private Database CloudsContinuous Availability for Private Database Clouds
Continuous Availability for Private Database Clouds
 
MySQL DevOps at Outbrain
MySQL DevOps at OutbrainMySQL DevOps at Outbrain
MySQL DevOps at Outbrain
 
RDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsRDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and Patterns
 
Deploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on ContainersDeploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on Containers
 
Pluk2011 deploy-mysql-like-a-devops-sysadmin
Pluk2011 deploy-mysql-like-a-devops-sysadminPluk2011 deploy-mysql-like-a-devops-sysadmin
Pluk2011 deploy-mysql-like-a-devops-sysadmin
 
Deploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on KubernetesDeploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on Kubernetes
 
OSS4B: Installing & Managing MySQL like a real devops
OSS4B: Installing & Managing MySQL like a real devopsOSS4B: Installing & Managing MySQL like a real devops
OSS4B: Installing & Managing MySQL like a real devops
 
Nuxeo Enterprise Platform (Nuxeo EP) - Technical Overview
Nuxeo Enterprise Platform (Nuxeo EP) - Technical OverviewNuxeo Enterprise Platform (Nuxeo EP) - Technical Overview
Nuxeo Enterprise Platform (Nuxeo EP) - Technical Overview
 
Managing Engineering Information with Nuxeo
Managing Engineering Information with NuxeoManaging Engineering Information with Nuxeo
Managing Engineering Information with Nuxeo
 
Nuxeo Platform 7.4: What's New
Nuxeo Platform 7.4: What's NewNuxeo Platform 7.4: What's New
Nuxeo Platform 7.4: What's New
 
Nuxeo platform in 15mn
Nuxeo platform in 15mnNuxeo platform in 15mn
Nuxeo platform in 15mn
 
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
 

Similar to Wso2 integration platform deep dive eu con 2016

WSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep DiveWSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep DiveWSO2
 
Integration Solution Patterns
Integration Solution Patterns Integration Solution Patterns
Integration Solution Patterns WSO2
 
Webbinar slides
Webbinar slidesWebbinar slides
Webbinar slidesWSO2
 
Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1WSO2
 
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...WSO2
 
Developing, Debugging and Administrating Your Integration Scenarios with WSO2...
Developing, Debugging and Administrating Your Integration Scenarios with WSO2...Developing, Debugging and Administrating Your Integration Scenarios with WSO2...
Developing, Debugging and Administrating Your Integration Scenarios with WSO2...WSO2
 
WSO2-ESB - The backbone of Enterprise Integration
WSO2-ESB - The backbone of Enterprise IntegrationWSO2-ESB - The backbone of Enterprise Integration
WSO2-ESB - The backbone of Enterprise IntegrationKasun Indrasiri
 
WSO2 Product Release webinar - The WSO2 ESB 4.8.0
WSO2 Product Release webinar - The WSO2 ESB 4.8.0WSO2 Product Release webinar - The WSO2 ESB 4.8.0
WSO2 Product Release webinar - The WSO2 ESB 4.8.0WSO2
 
Developing, Administering and Debugging with WSO2 Enterprise Integrator
Developing, Administering and Debugging with WSO2 Enterprise IntegratorDeveloping, Administering and Debugging with WSO2 Enterprise Integrator
Developing, Administering and Debugging with WSO2 Enterprise IntegratorWSO2
 
Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7 Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7 WSO2
 
Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB WSO2
 
WSO2Con USA 2015: An Introduction to the WSO2 Integration Platform
WSO2Con USA 2015: An Introduction to the WSO2 Integration PlatformWSO2Con USA 2015: An Introduction to the WSO2 Integration Platform
WSO2Con USA 2015: An Introduction to the WSO2 Integration PlatformWSO2
 
Hia 1693-effective application-development_in_iib
Hia 1693-effective application-development_in_iibHia 1693-effective application-development_in_iib
Hia 1693-effective application-development_in_iibAndrew Coleman
 
WSO2 Quarterly Technical Update
WSO2 Quarterly Technical UpdateWSO2 Quarterly Technical Update
WSO2 Quarterly Technical UpdateWSO2
 
2014 q3-platform-update-v1.06.johnmathon
2014 q3-platform-update-v1.06.johnmathon2014 q3-platform-update-v1.06.johnmathon
2014 q3-platform-update-v1.06.johnmathonaaronwso2
 
1480-techintrotoiib-150224130001-conversion-gate01.pptx
1480-techintrotoiib-150224130001-conversion-gate01.pptx1480-techintrotoiib-150224130001-conversion-gate01.pptx
1480-techintrotoiib-150224130001-conversion-gate01.pptxBalakoteswaraReddyM
 
Impact 2014 - IIB - selecting the right transformation option
Impact 2014 -  IIB - selecting the right transformation optionImpact 2014 -  IIB - selecting the right transformation option
Impact 2014 - IIB - selecting the right transformation optionAndrew Coleman
 

Similar to Wso2 integration platform deep dive eu con 2016 (20)

WSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep DiveWSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep Dive
 
Integration Solution Patterns
Integration Solution Patterns Integration Solution Patterns
Integration Solution Patterns
 
Webbinar slides
Webbinar slidesWebbinar slides
Webbinar slides
 
Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1
 
An overview of BizTalk
An overview of BizTalkAn overview of BizTalk
An overview of BizTalk
 
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...
 
Developing, Debugging and Administrating Your Integration Scenarios with WSO2...
Developing, Debugging and Administrating Your Integration Scenarios with WSO2...Developing, Debugging and Administrating Your Integration Scenarios with WSO2...
Developing, Debugging and Administrating Your Integration Scenarios with WSO2...
 
WSO2-ESB - The backbone of Enterprise Integration
WSO2-ESB - The backbone of Enterprise IntegrationWSO2-ESB - The backbone of Enterprise Integration
WSO2-ESB - The backbone of Enterprise Integration
 
Wso2 esb
Wso2 esbWso2 esb
Wso2 esb
 
Wso2 esb
Wso2 esbWso2 esb
Wso2 esb
 
WSO2 Product Release webinar - The WSO2 ESB 4.8.0
WSO2 Product Release webinar - The WSO2 ESB 4.8.0WSO2 Product Release webinar - The WSO2 ESB 4.8.0
WSO2 Product Release webinar - The WSO2 ESB 4.8.0
 
Developing, Administering and Debugging with WSO2 Enterprise Integrator
Developing, Administering and Debugging with WSO2 Enterprise IntegratorDeveloping, Administering and Debugging with WSO2 Enterprise Integrator
Developing, Administering and Debugging with WSO2 Enterprise Integrator
 
Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7 Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7
 
Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB
 
WSO2Con USA 2015: An Introduction to the WSO2 Integration Platform
WSO2Con USA 2015: An Introduction to the WSO2 Integration PlatformWSO2Con USA 2015: An Introduction to the WSO2 Integration Platform
WSO2Con USA 2015: An Introduction to the WSO2 Integration Platform
 
Hia 1693-effective application-development_in_iib
Hia 1693-effective application-development_in_iibHia 1693-effective application-development_in_iib
Hia 1693-effective application-development_in_iib
 
WSO2 Quarterly Technical Update
WSO2 Quarterly Technical UpdateWSO2 Quarterly Technical Update
WSO2 Quarterly Technical Update
 
2014 q3-platform-update-v1.06.johnmathon
2014 q3-platform-update-v1.06.johnmathon2014 q3-platform-update-v1.06.johnmathon
2014 q3-platform-update-v1.06.johnmathon
 
1480-techintrotoiib-150224130001-conversion-gate01.pptx
1480-techintrotoiib-150224130001-conversion-gate01.pptx1480-techintrotoiib-150224130001-conversion-gate01.pptx
1480-techintrotoiib-150224130001-conversion-gate01.pptx
 
Impact 2014 - IIB - selecting the right transformation option
Impact 2014 -  IIB - selecting the right transformation optionImpact 2014 -  IIB - selecting the right transformation option
Impact 2014 - IIB - selecting the right transformation option
 

More from Chanaka Fernando

Designing microservices platforms with nats
Designing microservices platforms with natsDesigning microservices platforms with nats
Designing microservices platforms with natsChanaka Fernando
 
WSO2 API microgateway introduction
WSO2 API microgateway introductionWSO2 API microgateway introduction
WSO2 API microgateway introductionChanaka Fernando
 
Wso2 api microgateway deployment patterns
Wso2 api microgateway deployment patternsWso2 api microgateway deployment patterns
Wso2 api microgateway deployment patternsChanaka Fernando
 
Federated api management with wso2 api manager
Federated api management with wso2 api managerFederated api management with wso2 api manager
Federated api management with wso2 api managerChanaka Fernando
 
Wso2 enterprise integrator deployment patterns
Wso2 enterprise integrator deployment patternsWso2 enterprise integrator deployment patterns
Wso2 enterprise integrator deployment patternsChanaka Fernando
 
Api management best practices with wso2 api manager
Api management best practices with wso2 api managerApi management best practices with wso2 api manager
Api management best practices with wso2 api managerChanaka Fernando
 
Wso2 api manager analytics and reporting
Wso2 api manager analytics and reportingWso2 api manager analytics and reporting
Wso2 api manager analytics and reportingChanaka Fernando
 
Exploring ballerina toolset (docker, testing, tracing, analytics, and more) ...
Exploring ballerina toolset (docker, testing, tracing, analytics, and more)  ...Exploring ballerina toolset (docker, testing, tracing, analytics, and more)  ...
Exploring ballerina toolset (docker, testing, tracing, analytics, and more) ...Chanaka Fernando
 
File processing and websockets with ballerina chanaka edited
File processing and websockets with ballerina chanaka editedFile processing and websockets with ballerina chanaka edited
File processing and websockets with ballerina chanaka editedChanaka Fernando
 
Hybrid integration platform reference architecture
Hybrid integration platform reference architectureHybrid integration platform reference architecture
Hybrid integration platform reference architectureChanaka Fernando
 

More from Chanaka Fernando (10)

Designing microservices platforms with nats
Designing microservices platforms with natsDesigning microservices platforms with nats
Designing microservices platforms with nats
 
WSO2 API microgateway introduction
WSO2 API microgateway introductionWSO2 API microgateway introduction
WSO2 API microgateway introduction
 
Wso2 api microgateway deployment patterns
Wso2 api microgateway deployment patternsWso2 api microgateway deployment patterns
Wso2 api microgateway deployment patterns
 
Federated api management with wso2 api manager
Federated api management with wso2 api managerFederated api management with wso2 api manager
Federated api management with wso2 api manager
 
Wso2 enterprise integrator deployment patterns
Wso2 enterprise integrator deployment patternsWso2 enterprise integrator deployment patterns
Wso2 enterprise integrator deployment patterns
 
Api management best practices with wso2 api manager
Api management best practices with wso2 api managerApi management best practices with wso2 api manager
Api management best practices with wso2 api manager
 
Wso2 api manager analytics and reporting
Wso2 api manager analytics and reportingWso2 api manager analytics and reporting
Wso2 api manager analytics and reporting
 
Exploring ballerina toolset (docker, testing, tracing, analytics, and more) ...
Exploring ballerina toolset (docker, testing, tracing, analytics, and more)  ...Exploring ballerina toolset (docker, testing, tracing, analytics, and more)  ...
Exploring ballerina toolset (docker, testing, tracing, analytics, and more) ...
 
File processing and websockets with ballerina chanaka edited
File processing and websockets with ballerina chanaka editedFile processing and websockets with ballerina chanaka edited
File processing and websockets with ballerina chanaka edited
 
Hybrid integration platform reference architecture
Hybrid integration platform reference architectureHybrid integration platform reference architecture
Hybrid integration platform reference architecture
 

Recently uploaded

Relationship Counselling: From Disjointed Features to Product-First Thinking ...
Relationship Counselling: From Disjointed Features to Product-First Thinking ...Relationship Counselling: From Disjointed Features to Product-First Thinking ...
Relationship Counselling: From Disjointed Features to Product-First Thinking ...Product School
 
"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin
"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin
"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro KozhevinFwdays
 
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...DianaGray10
 
Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...
Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...
Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...Product School
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfSafe Software
 
Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...
Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...
Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...MarcovanHurne2
 
H3 Platform CXL Solution_Memory Fabric Forum.pptx
H3 Platform CXL Solution_Memory Fabric Forum.pptxH3 Platform CXL Solution_Memory Fabric Forum.pptx
H3 Platform CXL Solution_Memory Fabric Forum.pptxMemory Fabric Forum
 
Importance of magazines in education ppt
Importance of magazines in education pptImportance of magazines in education ppt
Importance of magazines in education pptsafnarafeek2002
 
Confoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data scienceConfoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data scienceSusan Ibach
 
"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor Fesenko"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor FesenkoFwdays
 
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docxLeveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docxVotarikari Shravan
 
Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...
Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...
Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...Adrian Sanabria
 
My sample product research idea for you!
My sample product research idea for you!My sample product research idea for you!
My sample product research idea for you!KivenRaySarsaba
 
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...UiPathCommunity
 
Traffic Signboard Classification with Voice alert to the driver.pptx
Traffic Signboard Classification with Voice alert to the driver.pptxTraffic Signboard Classification with Voice alert to the driver.pptx
Traffic Signboard Classification with Voice alert to the driver.pptxharimaxwell0712
 
Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?MENGSAYLOEM1
 
"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google
"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google
"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, GoogleISPMAIndia
 
HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...
HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...
HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...htrindia
 
Automate Your Master Data Processes for Shared Service Center Excellence
Automate Your Master Data Processes for Shared Service Center ExcellenceAutomate Your Master Data Processes for Shared Service Center Excellence
Automate Your Master Data Processes for Shared Service Center ExcellencePrecisely
 

Recently uploaded (20)

Relationship Counselling: From Disjointed Features to Product-First Thinking ...
Relationship Counselling: From Disjointed Features to Product-First Thinking ...Relationship Counselling: From Disjointed Features to Product-First Thinking ...
Relationship Counselling: From Disjointed Features to Product-First Thinking ...
 
"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin
"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin
"DevOps Practisting Platform on EKS with Karpenter autoscaling", Dmytro Kozhevin
 
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
 
Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...
Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...
Synergy in Leadership and Product Excellence: A Blueprint for Growth by CPO, ...
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
 
Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...
Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...
Digital Transformation Strategy & Plan Templates - www.beyondthecloud.digital...
 
H3 Platform CXL Solution_Memory Fabric Forum.pptx
H3 Platform CXL Solution_Memory Fabric Forum.pptxH3 Platform CXL Solution_Memory Fabric Forum.pptx
H3 Platform CXL Solution_Memory Fabric Forum.pptx
 
Importance of magazines in education ppt
Importance of magazines in education pptImportance of magazines in education ppt
Importance of magazines in education ppt
 
Confoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data scienceConfoo 2024 Gettings started with OpenAI and data science
Confoo 2024 Gettings started with OpenAI and data science
 
"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor Fesenko"Platform Engineering with Development Containers", Igor Fesenko
"Platform Engineering with Development Containers", Igor Fesenko
 
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docxLeveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
Leveraging SLF4j for Effective Logging in IBM App Connect Enterprise.docx
 
Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...
Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...
Early Tech Adoption: Foolish or Pragmatic? - 17th ISACA South Florida WOW Con...
 
My sample product research idea for you!
My sample product research idea for you!My sample product research idea for you!
My sample product research idea for you!
 
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
Dev Dives: Leverage APIs and Gen AI to power automations for RPA and software...
 
Traffic Signboard Classification with Voice alert to the driver.pptx
Traffic Signboard Classification with Voice alert to the driver.pptxTraffic Signboard Classification with Voice alert to the driver.pptx
Traffic Signboard Classification with Voice alert to the driver.pptx
 
Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?Are Human-generated Demonstrations Necessary for In-context Learning?
Are Human-generated Demonstrations Necessary for In-context Learning?
 
"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google
"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google
"The Transformative Power of AI and Open Challenges" by Dr. Manish Gupta, Google
 
HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...
HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...
HBR SERIES METAL HOUSED RESISTORS POWER ELECTRICAL ABSORBS HIGH CURRENT DURIN...
 
In sharing we trust. Taking advantage of a diverse consortium to build a tran...
In sharing we trust. Taking advantage of a diverse consortium to build a tran...In sharing we trust. Taking advantage of a diverse consortium to build a tran...
In sharing we trust. Taking advantage of a diverse consortium to build a tran...
 
Automate Your Master Data Processes for Shared Service Center Excellence
Automate Your Master Data Processes for Shared Service Center ExcellenceAutomate Your Master Data Processes for Shared Service Center Excellence
Automate Your Master Data Processes for Shared Service Center Excellence
 

Wso2 integration platform deep dive eu con 2016

  • 1. WSO2 Integration Platform Deep Dive Chanaka Fernando - Senior Technical Lead Ramith Jayasinghe - Senior Technical Lead
  • 2. Agenda • Concepts in Integration • Demonstration • Product roadmaps/features • Q&A
  • 3. Evolution of Integration Point to Point Integration ● Custom code, data formats for majority of integration ( data extraction, business rule processing, data loading) ● Costly over time (maintenance, complexity) ● Tight Coupling ● Scalability is an issue ● Less reusability
  • 4. Evolution of Integration Use of Enterprise Service Bus ● Consistency: Clear set of guidelines (EIPs) results in repeatable and successful integration efforts/projects. ● Reusability: Tested and preconfigured components provides repeatable approach to integration.(transports/connectors/m ediators etc) ● Effectiveness: A common integration framework (with related abstract concepts) improves integration developer's productivity.
  • 5. Connected Business An internally and externally connected business. Image courtesy hRp://jdamico.net/wp-content/uploads/2010/04/collaborate-with-B2B-channel-partners.jpg ESB were used to connect internal systems in the past. Current need is to connect internal/external parties quickly and flexible manner. E.g. Employees, Internal/External systems, Partners, Customers.
  • 6. Connected Business Integration is a key factor for having frictionless interactions, inside and outside the organization.
  • 7. Integration and APIs - The Close Cousins • APIs cannot replace Integration – Integration of internal services, systems, data and cloud apis • Cannot mangle SOA for API Management needs • Using SOA and API in combination is the key to success of Connected Business.
  • 8. Integration and APIs - The Close Cousins
  • 9. WSO2 Integration + API Management Platform In practise API management and integration co-exists providing flexible, faster ways to connect required parties such as users, internal/external systems, employees etc.
  • 11. Fundamentals of WSO2 ESB Message Processing units - Sequences, mediators Message entry points - Proxy Services, APIs, Inbound endpoints. Message exit points - Endpoints
  • 13. Example Mediators Name Description Log Mediator Logs full or part of the message, at various severity levels ( Trace, Debug, etc) Sequence Mediator Invokes existing sequence - Sequence name can be static or dynamic Send Mediator Sends a message out, using static information or endpoint definition. Datamapper Mediator Transform data from one form to another Switch Mediator Evaluates messages contents against regular expression and invokes the corresponding mediator (switch-case-default) Validate Mediator Validates message or parts of message against XML schema (schema can be local or in registry) PayloadFactory Mediator Create a message payload from an existing message or from scratch Fault Mediator Transforms current message into custom Fault message
  • 14. Mediators • Transformation Mediators • Filters, Switches, Iterate, Aggregate, Clone • Property Mediator • Script Mediators • Custom Mediators
  • 15. Connectors • A connector is a ready made and convenient tool to reach publicly available web API’s. • ‘Cloud to Cloud’ and ‘Cloud to Enterprise’ Integration • ESB Connector Store : https://store.wso2.com/
  • 16. Connectors • Every connector is self-contained and independent from ESB code • Dynamically plug in to ESB • Dynamic Tooling support with WSO2 Developer Studio • You can write, ‘your own connector’ and just plug it in
  • 18. Fundamentals of WSO2 ESB Message Processing units - Sequences, mediators Message entry points - Proxy Services, APIs, Inbound endpoints. Message exit points - Endpoints
  • 19. Proxy Service • Acts like a virtual service. • Receives messages and mediates them before sending them to the endpoint (usually an actual service) • Mainly to expose as SOAP Service
  • 20. API/HTTP Service • APIs can accept REST messages which allow clients to provide additional information on how to mediate the message • Defined under a URL Context (e.g: /customer) • Can define multiple resources under a URL context • Resources – Component of API accessed through HTTP call – Similar to proxy service (in, out, and fault sequences) – Can restrict resource’s scope using URL patterns and URI templates
  • 21. API/HTTP Service • URL mapping – Path mappings (eg: /test/*, /foo/bar/*) – Extension mappings (eg: *.jsp, *.do) – Exact mappings (eg: /test, /test/foo) • URI template – /order/{orderId}would process /order/A0001 – /dictionary/{char}/{word}would process /dictionary/c/cat – Use get-property to retrieve exact values <log level="custom"> <property name="Character" expression="get-property('uri.var.char')"/> <property name="Word" expression="get-property('uri.var.word')"/> </log>
  • 22. Inbound Endpoint • Creating inbound messaging channels dynamically. – Listening Inbound – HTTP, HL7, TCP – Polling Inbound – JMS, File/VFS • Injects the inbound messages into an ESB message flow.
  • 23. Polling Inbound endpoint in a Cluster One Consumer Multiple Consumers
  • 24. Fundamentals of WSO2 ESB Message Processing units - Sequences, mediators Message entry points - Proxy Services, APIs, Inbound endpoints. Message exit points - Endpoints
  • 25. Endpoints • Logical representation of one or more real backend service, jms queue etc. • Address, HTTP Endpoints – A logical endpoint for an existing BE service • Load balancing / Failover – Group of endpoints for existing BE services
  • 26. Message Store and Message Processor • Asynchronous/One-way Messaging, JMS • Store and forward • Guaranteed Delivery and Rate matching • JMS Message broker as the persistence store – WSO2 MB, Apache Active MQ etc.
  • 27. Message Processor in a Cluster • One consumer per cluster – Guaranteed in-order delivery • Multiple consumers – Guaranteed delivery One Consumer Multiple Consumers
  • 28. Tasks • Allow configuration of scheduled jobs to execute internal/external commands • Inject a message into a proxy service or a named sequence
  • 33. WSO2 ESB 5.0 – Upcoming release • Beta version is available (Released on May 2016) • Improved usability of the ESB through debugging, data mapping capabilities through developer studio tooling • The product is released as a tuple of runtime, analytics and tooling • Dedicated analytics distribution(DAS) for ESB specific monitoring with pre built dashboards
  • 34. WSO2 ESB 5.0 – Statistics/Tracing • Coarse grained statistics about proxy/sequence/api/endpoint
  • 35. WSO2 ESB 5.0 – Statistics/Tracing • Fine grained statistics/tracing on mediators (message level)
  • 36. WSO2 ESB 5.0 – Statistics/Tracing • Fine grained tracing on messages
  • 37. WSO2 ESB 5.0 – Visual Data Mapper • Visual Data mapper – Different input/output options (XML, JSON, Files, Schemas) – Apply functions while mapping the data (Split, Aggregate, Uppercase, Lowercase)
  • 38. WSO2 ESB 5.0 – Mediation debugger • Debug mediation flows from the Developer studio
  • 39. WSO2 ESB – What’s new in 5.0 Other new features • JMS 2.0 support • Websocket support • JMS distributed(XA) transaction support • Rabbitmq/MQTT performance improvements
  • 41. WSO2 Integration Cloud (Upcoming) Integration Platform as a Service (iPaaS) • Running integrations on the cloud • Analytics integration • Develop integrations using WSO2 Developer studio
  • 44. WSO2 Business Process Server • BPMN 2.0 • WS-BPEL 2.0 • WS-HumanTask 1.1 • BPEL4People ● Define and execute business processes ● Define workflows interacting with People ● Graphical process modeling/administration/monitoring
  • 46. WSO2 Business Rules Server ● Integrates JSR94 compliant rule engines. ● Embed drools engine.
  • 48. Fundamentals of WSO2 Message Broker Messaging Models ● RPC Style - Request/Response (there is always a response) - Synchronous (client waits for response) - Non-persistent (message is lost if something failed) ● Point to Point (Queues) - A message is delivered only once to a single Broadcast a message to all the subscribers ● Publish/Subscribe (Topics) - Broadcast a message to all the subscribers
  • 49. Fundamentals of WSO2 Message Broker Messaging Models ● Publish/Subscribe (Topics) - Broadcast a message to all the subscribers ● Durable Subscriptions - Same as topic subscriptions - Subscriber offline - Messages get queued - Subscriber back online - Messages get delivered - Unsubscription needed to remove queuing
  • 50. Fundamentals of WSO2 Message Broker ● Transactional - Send/Receive multiple messages in a transactions. - ( send/consume -> rollback, reject, commit) ● Guaranteed Delivery/Acknowledgments , QOS ( MQTT, JMS). ● Persistence - Messages kept in memory or in reliable storage.
  • 51. Fundamentals of WSO2 Message Broker ● Dead letter channel - Broker keeps invalid/rejected messages in this channel. - Users can inspect/reroute/delete these messages. ● Hierarchical topics - Map relationships between data being published onto different topics. - Can Subscribe to part of the hierarchy. Games.* - receives messages published to ‘Games.FootBall’ and ‘Games.Cricket’ Games.Cricket.# - Receives messages published to ‘Games.Cricket.SriLanka’ and ‘Games.Cricket.UK’
  • 52. Fundamentals of WSO2 Message Broker Distributed Queues ● Provides strict or best effort support for inorder delivery ● There are no guarantee about the global order seen across subscribers
  • 53. Fundamentals of WSO2 Message Broker Distributed Queues with MB ● Provides strict or best effort support for inorder delivery ● There are no guarantee about the global order seen across subscribers ● Supported Protocols AMQP/JMS, MQTT
  • 54. MB Roadmap • Support for AMQP 1.0 and JMS 2.0 • Improvements to Storage Scheme, Performance improvements • Analytics for MB • C5 migration • Improved GUI • MQTT + Websockets
  • 56. Introducing WSO2 Data Services Server Painpoints: ● Application Silos / Different data stores ● Cumbersome data access/ transformation logic ● Business logic vs Data access logic ● Repetitive Code DSS: ● Well defined interfaces (standard based) ● Encapsulated data logic ● Configuration driven ● Loose Coupling between App & Data stores ● Scale as a separate architectural layer.
  • 57. WSO2 Data Services Server : Features • Multiple Data Sources • Nested Queries • Batch Processing • Distributed Transactions • OData (www.odata.org) – Quickly expose data as REST APIs – Standardized [URL conventions, Request/Response Headers, Status Codes ,Payload formats]
  • 58. Demonstration - Use Case • As part of an effort to improve traffic monitoring process, City transport authorities are making buses to send useful information while it's in operation such as speed, location data and direction. • To ensure safety of passengers, officials would like to detect bus drivers who violate speed limits. Supervisors will investigate these incidents case-by-case basis. • If a supervisor determines a particular incident is undue, bus driver will be placed under further investigation/review.
  • 59. Demonstration - Solution Architecture
  • 60. Demonstration - Concepts (OData) Retrieve duty roster: GET http://localhost:9765/odata/AllocationData/DriverAllocations/duty_roster(1) { "@odata.context": "$metadata#duty_roster/$entity", "@odata.etag": "8d32bf38-8d8f-30cb-8e87-36ebeaedc2a9", "vehicleId": 1, "driverId": 1 } Retrieve employee information: GET http://localhost:9765/odata/HRDataAPI/records/employee(1) { "@odata.context": "$metadata#employee/$entity", "@odata.etag": "58bff0d2-09a4-3315-b2a0-667626dbf5c7", "id": 1, "supervisorId": 2, "username": "driver", "status": "UnderReview", "name": "Driver" } Update Employee status: PATCH http://localhost:9765/odata/HRDataAPI/records/employee(1) { "status" :"UnderReview"}
  • 61. Demonstration - Concepts (Inbound Endpoints) <inboundEndpoint name="speed-alert-receiver" onError="fault" protocol="jms" sequence="BusSpeedViolationsSeq" suspend="false" xmlns="http://ws.apache.org/ns/synapse"> <parameters> <parameter name="interval">1</parameter> <parameter name="sequential">true</parameter> <parameter name="coordination">true</parameter> <parameter name="transport.jms.Destination">SpeedViolations</parameter> <parameter name="transport.jms.CacheLevel">3</parameter> <parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter> <parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter> <parameter name="java.naming.provider.url">repository/conf/jndi.properties</parameter> <parameter name="transport.jms.SessionAcknowledgement">SESSION_TRANSACTED</parameter> <parameter name="transport.jms.SessionTransacted">true</parameter> <parameter name="transport.jms.SubscriptionDurable">false</parameter> <parameter name="transport.jms.ConnectionFactoryType">queue</parameter> <parameter name="transport.jms.ReceiveTimeout">100</parameter> <parameter name="transport.jms.ContentType">application/json</parameter> </parameters> </inboundEndpoint> <inboundEndpoint name="hr-request-receiver" onError="fault" protocol="http" sequence="HRSeq" suspend="false" xmlns="http://ws.apache.org/ns/synapse"> <parameters> <parameter name="inbound.http.port">8081</parameter> </parameters> </inboundEndpoint>
  • 62. Demonstration - Concepts (Endpoints) <endpoint name="DutyRosterEP" xmlns="http://ws.apache.org/ns/synapse"> <http method="get" trace="disable" uri-template="http://localhost:9765/odata/AllocationData/DriverAllocations/duty_roster({uri.var.busId})"/> </endpoint> <endpoint name="GetEmployeeRecordsEP" xmlns="http://ws.apache.org/ns/synapse"> <http method="get" trace="disable" uri-template="http://localhost:9765/odata/HRDataAPI/records/employee({uri.var.employeeId})"/> </endpoint> <endpoint name="UpdateEmployStatusEP" xmlns="http://ws.apache.org/ns/synapse"> <http method="patch" trace="disable" uri-template="http://localhost:9765/odata/HRDataAPI/records/employee({uri.var.employeeId})"/> </endpoint> Usage: <property expression="json-eval($.driverId)" name="uri.var.employeeId" scope="default" type="STRING"/> <call> <endpoint key="GetEmployeeRecordsEP"/> </call>
  • 63. Demonstration - Concepts (Data Mapping) <datamapper config="gov:datamapper/MapSpeedViolationResultToHRSystem.dmc" description="Map-Speed-Violation-OutCome-To-HR-System" inputSchema="gov:datamapper/MapSpeedViolationResult ToHRSystem_inputSchema.json" inputType="JSON" outputSchema= "gov:datamapper/MapSpeedViolationResultToHRSystem_outputSchem a.json" outputType="JSON" />
  • 64. Demonstration - Concepts (Payload Messages and Service Chains) <sequence name="BusSpeedViolationsSeq" onError="fault" statistics="enable" trace="disable" xmlns="http://ws.apache.org/ns/synapse"> <property expression="json-eval($.event.payloadData.id)" name="uri.var.busId" scope="default" type="STRING"/> <property expression="json-eval($.event.payloadData.id)" name="busId" scope="default" type="STRING"/> <property expression="json-eval($.event.payloadData.timeStamp)" name="timeStamp" scope="default" type="STRING"/> <property name="uri.var.busId" scope="default" type="STRING" value="1"/> <call> <endpoint key="DutyRosterEP"/> </call> <property expression="json-eval($.driverId)" name="uri.var.employeeId" scope="default" type="STRING"/> <property expression="json-eval($.driverId)" name="driverId" scope="default" type="STRING"/> <call> <endpoint key="GetEmployeeRecordsEP"/> </call>
  • 65. Demonstration - Concepts (Payload Messages and Service Chains) <property expression="json-eval($.username)" name="driverUsername" scope="default" type="STRING"/> <property expression="json-eval($.name)" name="driverName" scope="default" type="STRING"/> <property expression="json-eval($.supervisorId)" name="supervisorId" scope="default" type="STRING"/> <property expression="json-eval($.supervisorId)" name="uri.var.employeeId" scope="default" type="STRING"/> <call> <endpoint key="GetEmployeeRecordsEP"/> </call> <property expression="json-eval($.username)" name="supervisorUserName" scope="default" type="STRING"/>
  • 66. Demonstration - Concepts (Payload Messages and Service Chains) <payloadFactory media-type="json"> <format> {"processDefinitionKey": "trafficViolations","businessKey": "trafficKey","tenantId": "-1234", "variables": [ {"name": "vehicleId", "value": "$1"}, { "name": "timeStamp", "value": $2 }, { "name": "driverId", "value": "$3"}, { "name": "driverUserName", "value": "$4"}, { "name": "driverName", "value": "$5"}, { "name": "supervisorUserName", "value": "$6" }]} </format> <args> <arg evaluator="xml" expression="$ctx:busId" xmlns:ns="http://org.apache.synapse/xsd"/> <arg evaluator="xml" expression="$ctx:timeStamp" xmlns:ns="http://org.apache.synapse/xsd"/> <arg evaluator="xml" expression="$ctx:driverId" xmlns:ns="http://org.apache.synapse/xsd"/> <arg evaluator="xml" expression="$ctx:driverUsername" xmlns:ns="http://org.apache.synapse/xsd"/> <arg evaluator="xml" expression="$ctx:driverName" xmlns:ns="http://org.apache.synapse/xsd"/> <arg evaluator="xml" expression="$ctx:supervisorUserName" xmlns:ns="http://org.apache.synapse/xsd"/> </args> </payloadFactory> <property name="messageType" scope="axis2" type="STRING" value="application/json"/> <property expression="fn:concat('Basic ', base64Encode('admin:admin'))" name="Authorization" scope="transport" type="STRING" xmlns:ns="http://org.apache.synapse/xsd"/> <call> <endpoint key="CreateBPMNWorkFlowEP"/> </call> <drop/> </sequence>
  • 67. Demonstration - Concepts (Payload Messages and Service Chains) <sequence name="HRSeq" statistics="enable" trace="disable" xmlns="http://ws.apache.org/ns/synapse"> <property expression="json-eval($.driverId)" name="uri.var.employeeId" scope="default" type="STRING" /> <datamapper config="gov:datamapper/MapSpeedViolationResultToHRSystem.dmc" description="Map-Speed-Violation-OutCome-To-HR-System" inputSchema="gov:datamapper/MapSpeedViolationResultToHRSystem_inputSchema.json" inputType="JSON" outputSchema="gov:datamapper/MapSpeedViolationResultToHRSystem_outputSchema.json" outputType="JSON" /> <property name="FORCE_SC_ACCEPTED" scope="axis2" type="STRING" value="true" /> <property name="OUT_ONLY" scope="default" type="STRING" value="true" /> <call description=""> <endpoint key="UpdateEmployStatusEP" /> </call> </sequence>
  • 68. Demonstration - Concepts (BPMN Workflows)
  • 69. Next generation Integration Platform • WSO2 Gateway Framework – An ultra high performance, lightweight and reusable message Gateway framework that encapsulates the messaging between source and target systems – HTTP/s message gateway leveraging Netty, LMAX Disruptor and WSO2 Pass-Thru messaging architecture.
  • 70. WSO2 Integration product suite • Series of products based on WSO2 GW Core framework.
  • 71. WSO2 Process Center Process owner / analyst Process participant Developer Create / improve / standardize Search / browse / follow View Develop executable processes Executable process is associated with Process Center
  • 72. Thank You! #WSO2ConEU Share your feedback for this session wso2con.com/app