Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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


Published on

The WSO2 integration platform offers a high performance, lean, enterprise-ready solution to solve integration and innovation challenges faced by connected businesses. This platform offers modern integration technologies that empower enterprises to build a digital business by seamlessly connecting mobile apps, services, multiple data repositories, social media, and cloud and on-premise systems. This is all done to enhance your customers’ experience and increase internal productivity.
One of the primary focuses in modern integration is to think in terms of the network-effect in terms of reliability in resilience, scalability, affordability, and adaptability. The session will focus on
Under the hood: Integration server architecture
Mediation catalog
Architectural styles for integration
Hybrid integration with WSO2
Debugging and troubleshooting your integration
Performance tuning
Production hardening

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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

  1. 1. Implementing an effective digital platform using WSO2 Dushan Abeyruwan Senior Technical Lead WSO2 Inc. PMC Apache Synapse
  2. 2. 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
  3. 3. Why Integration? Applicati ons People Devices • Enterprises heavily rely on the underlying software systems/services/applications. • Disparate technologies and platforms • No single solution or a vendor • Diverse Business requirements
  4. 4. 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
  5. 5. Digital Banking “The Evolving Journey”
  6. 6. Why we need an ‘Integration Platform’? • Different protocols, formats • Legacy systems • Reliable delivery • Pub-sub pattern • Orchestration • Long running processes (approval operations)
  7. 7. 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
  8. 8. WSO2 Integration Platform
  9. 9. Enterprise Integrator 6.0 Single integrated packaging of ● ESB ● Data Services ● Business Processes ● Business Rules ● Application Server (replaced by MSF4J) ● Message Broker
  10. 10. WSO2 Integration Platform - Digital Business -Banking
  11. 11. Integration server architecture
  12. 12. 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
  13. 13. 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
  14. 14. Service Integration • Call/respond mediator based message flow design.
  15. 15. Data Integration a.k.a DSS Runtime • Building Service abstractions on top of disparate data sources.
  16. 16. Business Processes a.k.a BPS Runtime
  17. 17. 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)
  18. 18. 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)
  19. 19. 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.
  20. 20. Analytics - Service Integrator (Mediation Statistics) o Overview section: No of requests, TPS, successful and failed requests, artifact level statistics.
  21. 21. Tooling - WSO2 Developer Studio
  22. 22. Tooling - Service Integration
  23. 23. Connectors Ensure Faster Integration with Tooling
  24. 24. Hybrid Integration
  25. 25. Integration Cloud • Cloud-to-Cloud or Cloud-to-On-Premises integration projects for WSO2 Enterprise Service Bus (ESB)
  26. 26. Hybrid Integration
  27. 27. 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 • Integration Cloud – ESB as a service – Integration templates with Connectors.
  28. 28. Debug and Troubleshooting
  29. 29. Mediation Debugger o Debugging a message flow.
  30. 30. Service Integration Analytics – Mediation Statistics o Fine-grained statistics of mediation flows : Profiling your mediation flows to identify possible bottlenecks.
  31. 31. Architectural Styles of Enterprise Integration
  32. 32. Architectural Styles of Enterprise Integration Native support for ALL Enterprise Integration Patterns (EIP) Content based router Publisher-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 enricher Content filter
  33. 33. Dead-Letter-Channel Client Mediation... Endpoint Back-end Message Store Message Processor Retry RESTAPI Response
  34. 34. Splitter {XPath} Extract Values Clone {2 Flows} {PayloadFactory} XML payload Send {to DSS} {PayloadFactory} JSON payload Send {to Message Broker} Iterate Records Read CSV file Build its XML representation
  35. 35. Microservices in Modern Enterprise Architecture
  36. 36. Loose Coupling and Its Architectural Benefits
  37. 37. Deployment
  38. 38. Continues Integration patterns
  39. 39. Deployment Pattern
  40. 40. Performance tuning / Production Hardening
  41. 41. High Performance ESB (5.0 vs 4.9) TPS Comparison Latency Comparison
  42. 42. High Performance ESB (5.0 vs 4.9)
  43. 43. 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
  44. 44. Future of Integration (Micro Integration)
  45. 45. • 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, ...
  46. 46. Thank You!