Upload
sheena-cox
View
225
Download
0
Tags:
Embed Size (px)
Citation preview
Introducing the WSO2 Enterprise Integration PlatformBy 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
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
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
Point-to-Point Connections?
Point-to-Point Connections?
Point-to-Point Connections?
Point-to-Point Connections?
Bus
Bus
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
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
KEY FEATURES
Routing
• Simple proxy
• Header-based Routing
• Content-based Routing
• XPath/Property/Regular Expression
• Rules
• If/Then/Else
• Router mediator for complex routing
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>
Service Orchestration
• Service chaining
• Split/Aggregate/
• Clone/Merge
• Parallel/Serial execution
• If/Then/Else
Transformation
• XSLT
• Payload Factory
• Smooks
• XQuery
• E4X
Protocol & Message Format Switching
• Message Formats
• SOAP, REST, JSON, Binary
• Protocols
• HTTP(S), JMS, VFS(File), TCP, SAP, FIX, HL7, SMTP
Business/Cloud Adaptors
Business Adaptors
Load Balancing
QoS : Security, Throttling, Caching
• WS-Security / REST Security
• Throttling
• Concurrency
• Rate
• Caching
• Local
• Replicated
• Suitable for idempotent operations
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/
Store and Forward
• Store incoming request in message store
• In memory, JMS queue, Database
• Forward to backend using message processor
• Guaranteed delivery
Message Store
Management Console
WSO2 Developer Studio
Monitoring
• Mediation Statistics
• JMX
• SNMP
• BAM
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
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
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
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
Business Process
• Monitoring business
• Business Process Orchestration
• Continuous evolution
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
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
DBDB
DB
Mobile Service Gateway
JSON
External Service Providers
http://wso2.com/solutions/enterprise-integration/mobile-services-gateway/
SAP Message Gateway In Retailer
IDOC
Message StoreDB
DB
POS
POS
BAPI
JMS
JMS
Exposing Services to Public
External Users
THANK YOU