Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

37
Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka

Transcript of Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Page 1: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Introducing the WSO2 Enterprise Integration PlatformBy Miyuru Wanninayaka

Page 2: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Software in Enterprise

• Large enterprises have many software systems in their “line of business”

• Enterprise Resource Planning systems (ERP)

• Management Information Systems (MIS)

• Decision Support Systems (DSS)

• Data stores

• Legacy systems

• These systems are often independent and controls one or more related business activities

• But they are all parts of a single business process

Page 3: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Need for Enterprise Integration

• Individual software applications cannot achieve much

• Systems should be integrated to work together

• Enables free data flow across the organization

• Improves production and management efficiency

• Application users can make better decisions

Page 4: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Easier Said Than Done!

• Integrating a multitude of complex software applications is no child's play

• Systems are diverse

• Different platforms

• Different programming languages

• Different protocols and messaging standards

• Different QoS requirements

• Not everyone adhere to standards

Page 5: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Point-to-Point Connections?

Page 6: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Point-to-Point Connections?

Page 7: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Point-to-Point Connections?

Page 8: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Point-to-Point Connections?

Page 9: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Bus

Page 10: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Bus

Page 11: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

What is an ESB?

• A piece of software that resembles a data bus used in computers

• Provides a uniform approach for connecting systems

• Monitor and control routing of message exchange between services

• Software applications communicate via the bus

• The service bus acts as a carrier or a message broker

• Replaces direct contact between applications – Reduces coupling

http://en.wikipedia.org/wiki/Enterprise_service_bus

Page 12: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

WSO2 Enterprise Service Bus

• A lightweight, high performance ESB

• Configuration driven over coding

• REST, SOAP and WS-* support

• Domain specific protocol support (eg: SAP, FIX)

• Extensible to support custom protocols / message formats

• Cloud enabled

• Supports all EIP patterns

http://www.eaipatterns.com

Page 13: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

KEY FEATURES

Page 14: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Routing

• Simple proxy

• Header-based Routing

• Content-based Routing

• XPath/Property/Regular Expression

• Rules

• If/Then/Else

• Router mediator for complex routing

Page 15: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Traffic Filtering

• Xpath and regex based filtering

• Script based filtering

• Schema based filtering and validation

<id>foo</id>

<id>bar</id>

<id>bar</id>

<id>foo</id>

Page 16: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Service Orchestration

• Service chaining

• Split/Aggregate/

• Clone/Merge

• Parallel/Serial execution

• If/Then/Else

Page 17: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Transformation

• XSLT

• Payload Factory

• Smooks

• XQuery

• E4X

Page 18: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Protocol & Message Format Switching

• Message Formats

• SOAP, REST, JSON, Binary

• Protocols

• HTTP(S), JMS, VFS(File), TCP, SAP, FIX, HL7, SMTP

Page 19: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Business/Cloud Adaptors

Business Adaptors

Page 20: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Load Balancing

Page 21: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

QoS : Security, Throttling, Caching

• WS-Security / REST Security

• Throttling

• Concurrency

• Rate

• Caching

• Local

• Replicated

• Suitable for idempotent operations

Page 22: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

REST Capabilities

• Expose any service as RESTful APIs

• URL Mapping

• URL TemplatesREST

http://www.infoq.com/articles/webber-rest-workflow http://wso2.org/library/articles/2012/09/get-cup-coffee-wso2-way/

Page 23: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Store and Forward

• Store incoming request in message store

• In memory, JMS queue, Database

• Forward to backend using message processor

• Guaranteed delivery

Message Store

Page 24: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Management Console

Page 25: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

WSO2 Developer Studio

Page 26: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Monitoring

• Mediation Statistics

• JMX

• SNMP

• BAM

Page 27: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Performance

• WSO2 ESB 4.6.0 comes with new “Pass-through HTTP transport”

• Supports “pass-through”

• Sub millisecond latency within ESB

• Supports all mediation scenarios ( including content aware flows)

• Fastest ESB on the Earth!

• Streaming XPath and Fast XSLT implementation

Direct

Proxy

CBRProxy

CBRSOAPHeade

rPro

xy

CBRTrans

portH

eade

rPro

xy

XSLTPro

xy

XSLTEnh

ance

dPro

xy (F

ast X

SLT m

ediat

or)

Secur

ity0

1,0002,0003,0004,0005,0006,0007,000

WSO2 ESB 4.5.1 WSO2 ESB 4.6.0

http://wso2.org/library/articles/2013/01/esb-performance-65 http://wso2.org/library/articles/2013/01/streaming-xpath-parser-wso2-esbhttp://techfeast-hiranya.blogspot.com/2013/02/how-worlds-fastest-esb-was-made.html

Page 28: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Real World Performance – Online Shopping Use Case

• Billions of hits per day

• Only milliseconds range allowed as added latency in middleware layer

• WSO2 ESB instances handle external traffic loads from different functional areas

• Catalog, basket, checkout

• Channels: Web, Mobile, Desktop, Partner sites, APIs

• Not just “pass-through”

• Header based routing, XPath

• Zero downtime for years

• Inclusive daily peak hours and annual seasonal peaks

Catalog Catalog

Basket Basket

Checkout Checkout

Page 29: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Beyond ESB

• Just an ESB alone cannot make enterprise integration end-to-end

• WSO2 Middleware platform provides products to support end-to-end enterprise integration

Page 30: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Business Process

• WS-BPEL 2.0 and BPEL4WS 1.1

• Long running stateful processes

• Short running stateless or stateful processes

• WS-Human Task 1.1, BPEL4People 1.1

Other systems / Client Apps

Human TasksLong running complex business processes

Page 31: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Business Process

• Monitoring business

• Business Process Orchestration

• Continuous evolution

Page 32: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Data As a Service

• Expose Any Source of Data as Web Services or REST Resources

• RDBMS via JDBC CSV, Excel, ODS, Cassandra, Google Spreadsheets, RDF

• XML based DSL with no Java code to be written

Data

Other systems / Client Apps

Page 33: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Security Gateway

• Centralized Authentication

• Standard-based Single Sign-on

• Centralized Policy-Based Authorization

• Bridging Incompatibilities / Protocol Switching

• Centralized Auditing & Monitoring

• Content-Based Filtering/Firewall

• Schema-Based Input Validation

http://wso2.org/library/webinars/2011/06/introducing-wso2-security-amp-identity-gateway-solution

Page 34: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

DBDB

DB

Mobile Service Gateway

JSON

External Service Providers

http://wso2.com/solutions/enterprise-integration/mobile-services-gateway/

Page 35: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

SAP Message Gateway In Retailer

IDOC

Message StoreDB

DB

POS

POS

BAPI

JMS

JMS

Page 36: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

Exposing Services to Public

External Users

Page 37: Introducing the WSO2 Enterprise Integration Platform By Miyuru Wanninayaka.

THANK YOU