WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

46
Implementing an effective digital platform using WSO2 Dushan Abeyruwan Senior Technical Lead WSO2 Inc. PMC Apache Synapse

Transcript of WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Page 1: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Implementing an effective digital platform using WSO2

Dushan Abeyruwan Senior Technical Lead

WSO2 Inc.

PMC Apache Synapse

Page 2: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Overview……..

● Introduction and the need of Integration Platform

● Enterprise Integrator 6.0

● Integration server architecture

● Architectural styles for integration

● Hybrid integration with WSO2

● Debugging and troubleshooting your integration

● Deployment

● Performance tuning

● Production hardening

Page 3: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Why Integration?

Applica

ti

ons

People

Device

s

• Enterprises heavily rely on the underlying software systems/services/applications.

• Disparate technologies and platforms

• No single solution or a vendor

• Diverse Business requirements

Page 4: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Enterprise Integration

• Plumbing different software applications/services/systems and forming new software solutions is known as ‘Enterprise Integration’.

“Technology for developing, maintaining, testing, deploying, and governing interfaces between applications, machines, or databases” – Forrester 2015

Page 5: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Digital Banking “The Evolving Journey”

http://www.pymnts.com/news/digital-banking/2016/mobile-digital-banking-future/

Page 6: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Why we need an ‘Integration Platform’?

• Different protocols, formats• Legacy systems• Reliable delivery• Pub-sub pattern• Orchestration• Long running processes (approval

operations)

Page 7: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Integration Requirements• Growth and diversity of Integration needs

– Iot,API,SaaS,B2B,On-premise applications• Agility and ease of Integration

– operational overhead, rapid integration,Visual, Error Handling• Orchestration on how quickly we can implement complex orchestration

logics– simple and agile development of orchestration logic

• Integrating applications, services, data, APIs and identity– Integration Server, Data Integration, Identity Bus, API

GW/Composition• Performance

– TPS, deal on demand• Scalability

– Container based scaling

Page 8: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

WSO2 Integration Platform

Page 9: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Enterprise Integrator 6.0

Single integrated packaging of● ESB● Data Services● Business Processes● Business Rules● Application Server (replaced by MSF4J)● Message Broker

Page 10: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

WSO2 Integration Platform - Digital Business -Banking

Page 11: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Integration server architecture

Page 12: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Service Integration a.k.a ESB runtime

o A lightweight, high performance service bus

o Comprehensive REST, SOAP, WS-* support

o SAP, FIX, HL7 - Domain specific solutions

o Zero Code/Configuration driven

o Extensible and Scalable

o 100% coverage of all EIPs

Page 13: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

WSO2 Service Integration

• Revamped inbound messaging architecture. – Creating inbound messaging channels dynamically.

– Listening Inbound – HTTP, HL7, TCP, WS-RM

– Polling Inbound – JMS, File/VFS

• Coordination support– Task coordination – One tasks at a time on a cluster/ leader election.

– JMS, File(VFS) Inbound endpoint – One or multiple consumers per cluster.

– Message Processor- One or multiple processors per cluster.

•JMS 2.0

•Web Socket

•Data Mapping

•Mediation Debugger

Page 14: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Service Integration

• Call/respond mediator based message flow design.

Page 15: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Data Integration a.k.a DSS Runtime• Building Service abstractions on top of disparate data sources.

Page 16: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Business Processes a.k.a BPS Runtime

Page 17: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

WSO2 BPS– Features • Define and execute business processes - WS-BPEL 2.0, BPEL4WS 1.1,

BPMN 2.0, long running stateful processes

• Define workflows interacting with People - BPMN user tasks, WS-HumanTask 1.1, BPEL4People 1.1

• Data manipulation and extensibility - XSLT, XPath, XQuery support

• Graphical process modeling – WSO2 Developer Studio

• Create and monitor custom Key performance indicators (KPI)

Page 18: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Broker a.k.a MB runtime

• Avoid message routing over the network .

• Use scalable storage to share messages between nodes

• High availability & fault tolerance.

• Interoperability with AMQP clients.

• Use distributed coordination to control the behavior (i.e Hazelcast).

• Extend messaging to IoT. (MQTT)

Page 19: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Analytics o Mediation Statistics - Coarse-grain

and fine-grain statistics of your integration/mediation flow.

o Message Tracing – Enable tracing for a selected message flow and trace through the message path.

Page 20: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Analytics - Service Integrator (Mediation Statistics) o Overview section: No of requests, TPS, successful and failed requests,

artifact level statistics.

Page 21: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Tooling - WSO2 Developer Studio

Page 22: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Tooling - Service Integration

Page 23: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Connectors Ensure Faster Integration with

Tooling

Page 24: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Hybrid Integration

Page 25: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Integration Cloud • Cloud-to-Cloud or Cloud-to-On-Premises integration projects for WSO2 Enterprise Service Bus (ESB)

http://wso2.com/cloud/integration-cloud/

Page 26: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Hybrid Integration

https://docs.wso2.com/display/IntegrationCloud

Page 27: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Implementing Extension Points in the WSO2 Platform

• Cloud to Cloud Integration– A connector is a ready made and

convenient tool to reach web API’s.

– ESB Connector Store : ~150 connectors

https://store.wso2.com/store/

• Integration Cloud– ESB as a service

– Integration templates with Connectors.

Page 28: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Debug and Troubleshooting

Page 29: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Mediation Debugger o Debugging a message flow.

Image: thinkpublic/photopin cc

Page 30: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Service Integration Analytics – Mediation Statistics o Fine-grained statistics of mediation flows : Profiling your mediation flows to

identify possible bottlenecks.

Image: thinkpublic/photopin cc

Page 31: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Architectural Styles of Enterprise Integration

Page 32: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Architectural Styles of Enterprise IntegrationNative support for ALL Enterprise Integration Patterns (EIP)

WSO2 EIP Guide: http://docs.wso2.org/display/IntegrationPatterns

Content based routerPublisher-Subscriber Point-to-Point Channel

Dead-letter channel Command message

Guaranteed delivery Request-reply

Splitter Aggregator Scatter-gather

Pipe-and-filters Message translator Event message

Event driven consumer Durable subscriber

Content enricherContent filter

Page 33: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Dead-Letter-Channel

Client Mediation... Endpoint Back-end

Message Store

MessageProcessor

Retry

RES

T A

PI

Response

Page 34: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Splitter

{XPath}

Extract ValuesClone

{2 Flows}

{PayloadFactory}

XML payloadSend

{to DSS}

{PayloadFactory}

JSON payloadSend

{to Message Broker}

Iterate Records

Read CSV file

Build its XML representation

Page 35: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

http://wso2.com/whitepapers/microservices-in-practice-key-architectural-concepts-of-an-msa/

Microservices in Modern Enterprise Architecture

Page 36: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

https://www.youtube.com/watch?v=CDwStTnoCMs

Loose Coupling and Its Architectural Benefits

Page 37: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Deployment

Page 38: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Continues Integration patterns

Page 39: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Deployment Pattern

Page 40: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Performance tuning / Production Hardening

Page 41: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

High Performance ESB (5.0 vs 4.9)

TPS Comparison

Latency Comparison

Page 42: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

High Performance ESB (5.0 vs 4.9)

Page 43: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Capacity driven deployment● If an instance of WSO2 Product handles

○ ω requests/transactions

○ within a second

● to handle

○ η requests/transactions

○ within a second

● A cluster of WSO2 ESB requires

○ n number of nodes/instances

● When

○ n = ⌈{ η + η (30/100) } / ω⌉● and

○ n.ω > η + η (30/100)

+ =

A1 A2 A3 An

LB

Page 44: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Future of Integration (Micro Integration)

Page 45: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

• Programming language with text and graphical syntaxes and sequence diagram programming model

• Modern, network-aware, data-aware, security-aware programming system inspired by Java, Go, Maven, ...

http://ballerinalang.org/

Page 46: WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration

Thank You!