Understanding the WSO2 Platform and Technology
Paul Fremantle, CTO and Co-Founder
http://pzf.fremantle.org
Twitter: @pzfreo #wso2
Motivation for a new
middleware model
WSO2 Product Offerings
Stratos PaaS Foundation App Factory
Carbon Middleware Platform Developer Studio
Stratos'Controller''''
Stratos'Controller''''
Iden. ty'Mgmt''Service'
Logging'Service'
Security'Service'
Registry'Service'
Data'Service'
Elas. c''Load'
Balancer'
Cloud'Controller/'Autoscaler'
Artefact''Distribu. on'Service'
Deployment'Synchroniser'
Management'Console'
File'Storage'Service'
Task''Mgmt'Service'
Meter'and'Billing'Service'
Load''Monitor'
PaaS!
Foundation! App Fact o r y !
App Fact o r y !
App Fact o r y !App Fact o r y !
WSO2 Platform
4
Use the Correct Tool
Real-Time Events
Complex orchestration
Use Data Server
Use ESB
Use Registry
Use Message Broker
High Change Use Business Activity
Monitoring
Low Change
Use Rule Engine
Simple Store-forward
Use BPM
Reporting Dashboards
Use Complex
Event
Processing
Persistence Pass-through
Gartner : WSO2 visionary in all 3
categories of application infrastructure
Analyst Reception:
“Visionary/Leader”
• Gartner Magic Quadrants – Visionary • Application Infrastructure for:
• Application Integration Projects, 2012 • SOA Infrastructure Projects, 2012 • SOA Application Projects, 2012
• SOA Governance Technologies, 2011 • Application Infrastructure for SOA, 2010 • Shared SOA Infrastructure, 2010
• Forrester Waves • Leader: Enterprise Service Bus, 2011
• Strong Performer:
• SOA Service Lifecycle Management, 2012
• Integrated SOA Governance, 2012
• Standalone SOA Management, 2011
• Awards – Repeat Wins • SD Times 100: 2008, 2009, 2010, 2011, 2012
• InfoWorld Best of Open Source: 2009, 2011
Carbon
Carbon 4.0 (C4)
• The latest core and products based on the Carbon
technology
• Modular middleware for on-premise and cloud
• Reconfigurable to your needs:
• When you need additional components in the same runtime
• e.g. Combine Business Process Server and Data Services)
• When you need to vertically scale as well as horizontally scale:
• e.g. Deploy API Manager with 10 gateway nodes, 6 BAM nodes and
2 Store/Provider nodes
• Improvements to Carbon are inherited by all the
Carbon products!
Enterprise Service Bus
• 4th Generation
• In production at dozens of customers worldwide
• Main Characteristics: • Based on Apache Synapse
• Configuration based (limited coding)
• Supports SOAP, REsT, APIs.
• High Performance
• Low Footprint
• Wide Interoperability
Connect Anything to Anything
• WSO2 ESB supports a wide range of
• Transports: HTTP, JMS, AMQP, FTP, POP, IMAP, FIX,
and more!
• Formats & Protocols: JSON, XML, SOAP, EDI, HL7,
Binary formats, CORBA/IIOP
• Legacy Adapters: SAP, PeopleSoft,
IBM WebSphere MQ, MSMQ
• Cloud Adapters: SalesForce,
• Paypal,LinkedIN, Twitter, JIRA
ESB Performance
API Ecosystem Model
Application Server 5.0
• Support for Apache CXF based JAXWS/JAXRS apps
• Now WSO2 AppServer ships with both Axis2 as well as CXF
frameworks
• First class support for Apache CXF services running on the Carbon
framework
• Full support for Tomcat XML configs (catalina.xml,
etc)
• URL Mapping support
• Merge of Mashup Server features
• Includes a new Server-Side JavaScript framework:
• A simple Server Side Javascript runtime
• Available as a standalone runtime as well (http://jaggery.io)
• Not aiming to compete with node.js but will run on top of
node.js in the future
• Currently runs on rhino
• We used Jaggery to build the API Store in API Manager
• Can embed Gadgets into .jag files
• Closes the gap between Web apps from Web services by
allowing one to create both applications and APIs at the same
time.
Governance Registry 4.5 What’s new
Hierarchical Subscriptions for
Collections
Onetime Email Verification for
Subscriptions
URL Referenced Assets
API Assets
Worklist Notification Bar
Task Scheduling for Registry
Additional Reporting
Improvements
Improving Support for
Configurable Governance Artifacts
Support for Source Configuration
Management(SCM)
Support for Java Management
Extensions(JMX)
XPath Query Support for Search
Lifecycle Audit
WS API for Governance
Artifacts(CRUD Operation
Support)
Display Notification Type
Information on Notifications UI
WSO2 Identity Server 4.0
• Decentralized federated SAML2 IDP
• Federated Single-Sign On
• OAuth 2.0 support
• Simpler support for HTTPS-based
tokens
• SCIM 1.0 support
• REST-based cloud user-provisioning
standard
• Read/Write Active Directory
support
• XACML 3.0 support
• Multiple request profile
• Obligation & advice
• Federated XACML PDP
• WS-XACML support for
communication between PEP and
PDP
• Improved Identity Management
features
WSO2 Message Broker 2.0
• Re-architected core
• Designed to manage large scaling of persistent
messaging
• Large numbers of queues, subscribers and messages
• Elastically scalable datastore
• No SPOF / Full HA
• Significant improvement in performance
compared to MB 1.0
• Good scaling characteristics in our tests so far
WSO2 CEP Server 2.0
• High performance Thrift transport
• Supports same data publishers as BAM2.0
• Management UI improvements
• Develop Studio mode
• New pluggable CEP engine Siddhi
• A high performance Java engine
• Written by WSO2 team
• Available standalone or in CEP Server
from allStockQuotesStream#window.time(120000)
insert into fastMovingStockQuotesStream
symbol,avg(price) as avgPrice, price
group by symbol
having ((price > (avgPrice*1.02)) or ((avgPrice*0.98)>price ));
CEP Performance
Large cluster deployment
Management and Worker Nodes
21
Elastic Load Balancer
BAM 2.0 Architecture
Big Data for Analytics
Scalable Analytics
Deployment
Stratos 2.0 beta
• Support for multiple languages and runtimes (PHP, Jetty, plus
extensible)
• New Cartridge model allows new languages and frameworks to
be plugged in
• Supports existing VM-based IaaS but also enables lightweight
LXC model
• Support for more IaaS providers (vmWare, EC2, OpenStack,
CloudStack, Rackspace, etc) via jclouds
• Supports a single Stratos deployment over multiple IaaS (hybrid
cloud)
• Puppet based deployment
• Improved logging model
• Smaller minimum footprint
• Improved autoscaling and ELB
Application Platform Middleware Containers and Services
Stratos Foundation Services
Carbon
Enterprise
Service Bus
Cartridge
Carbon
Application
Server
Cartridge
Stratos PaaS Controller
Message
Service
Logging
Service
Security
Service
Registry
Service
Relational
Data
Service
Elastic
Load
Balancer
Cloud
Controller/
Auto-scaler
Artefact
Distribution
Service Deployment
Synchroniser
PaaS
Management
Console
Column
Storage
Service
File
Storage
Service
Task
Mgmt
Service
Billing
Service
Other Carbon
Cartridges
PHP
Cartridge
Any
Pluggable
Cartridge
Infrastructure Cloud (EC2, vmWare, Rackspace, OpenStack, Eucalyptus, etc)
Service
Load
Monitor
WSO2 Stratos Platform as a Service
WSO2 Stratos Cloud Architecture
Stratos Architectural Advantages
Availability Scalability Management
Balancing and failover across
hybrid clouds
Tenant partitioning
Private jet mode
Management nodes
State replication and session
replication
Ghost deployment BigData Logging infrastructure
Multiple load balancers with
keepalived or DNS RR
BAM 2.0 architecture Deployment synchronization
Native multi-tenancy Autoscaling P2 Repository
Dynamic Clustering Elastic Load Balancer Consistent management and
infrastructure services across
entire platform
27
AppFactory
WSO2 App Factory
https://appfactorypreview.wso2.com/
Invention comes in many forms and at many scales. The most radical and transformative of inventions are often those that empower others to unleash their creativity – to pursue their dreams.
Jeff Bezos
Questions!