1. Beyond the Middleware
WSO2 Technical Overview
John Mathon, VP Enterprise Product Strategy
Š WSO2 2014. Not for redistribution. Commercial in Confidence.
2. What we do:
WSO2 can help any business wherever they are
and take them where they want to go.
3rd
Party
Apps
API
App
App
PaaS for
Managed 3rd
Party Apps
API
Business = {People, Processes,
Data}
3rd Party
Apps
API
Business Business with APIs Connected Business
(WSO2 Carbon middleware) (WSO2 API Manager) (WSO2 App Factory)
App
Business = {People, Processes, Data}
Business = {People, Processes, Data}
4. WSO2 Value Proposition
- Complete platform
- Data to screen
- Componentized
- OSGI-based, use what you need, grows with you, internally consistent
- Deployment flexibility
- On-premise, private cloud, public cloud: same cloud-native code!
- Project productivity
- Lean model, config vs. code, leverage open standard skill base
- Lock-in protection
- Apache License 2.0
- Comprehensive support/competitive price
5. âOpen Releaseâ Business Model
- All features released openly
- No crippled edition
- Uses business-friendly open
source license such as Apache
- Maintenance and support only to
customers/licensees
- Value = Production Support
services and maintenance
Open
Source,
Apache
License
6. WSO2âs Open Source Edge
- Unique Support Model: âWe build it. We support it. We manage it. We
improve it.â
- No Support Engineers
- No Project Managers
- No Multi-Year Roadmap
- WSO2 Support Offerings: QuickStart, Development Support &
Production Support
- Open Development Methodology: Customer-driven, agile, open and
effective product engineering & development
- High levels of customer involvement in product development & evolution
- Open public mailing lists â architecture@wso2.com
9. WSO2 brief history
⢠2001: Primary contributors to key standards and
Apache Web Services projects
⢠2005: WSO2 founded by recognized
leaders in XML, Web services
technologies, standards and open source
⢠Funded by Toba Capital &
CISCO
⢠2014: 300+
employees
and growing
Palo Alto
London
Madrid
Colomb
o
Bloomington
10. Senior Leadership Team
Dr. Sanjiva Weerawarana
Founder, Chairman & CEO
Ex-IBM, leader in Web
Services & SOA, leader in
open source globally
Paul Fremantle
Co-Founder & CTO
Ex-IBM, leader in enterprise
middleware, leader in Web
services & SOA standards
Jonathan Marsh
VP Business Development
Ex-Microsoft, leader in
XML, Web services & SOA
technology and standards
Samisa Abeysinghe
VP Delivery
10+ yrs of experience,
Apache Committer,
author
Chris Haddad
VP Tech Evangelism
Ex-Gartner/Burton, expert in
SOA, PaaS, Cloud Technologies
John Methon
VP Product Marketing
Founder of TIBCO,
20+years working on
enterprise software for
corporations worldwide
Devaka Randeniya
VP, Sales
Devaka has extensive experience
in the markets of financial services,
telecom, web 2.0, government and
ISVs
11. WSO2 Offerings - Products
Carbon Middleware Platform Developer
Studio
Stratos PaaS Foundation App Factory
Stratos'Controller'
'
Iden. ty'
Mgmt''
'
Service'
'
Logging'
Service'
Stratos'Controller'
'
'
'
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 or y !
App Fact or y !
App Fact or y ! App Fact or y !
14. Deployment Choices
Or, any combination of these.
(Same programming model
across all deployment
choices)
10/20/2014 14
StratosLive
Public
PaaS
Stratos
Private
PaaS
Carbon
On-Premise
16. Carbon
Composable Server Architecture - Provides a modular, light-weight, OSGi-based
server development framework.
Carbon Application(CApp) deployment support.
Multi-Profile Support for Carbon Platform - This enable a single product to run on
multiple modes/profiles.
Carbon + Tomcat JNDI Context - Provide ability to access both carbon level and
tomcat level JNDI resources to applications using a single JNDI context.
Distributed Caching and Clustering functionality - Carbon kernel provides a distributed
cache and clustering implementation which is based on Hazelcast- a group
communication framework
Pluggable Transports Framework - This is based on Axis2 transports module
Registry/Repository API- Provide core registry/repository API for component
developers
17. Carbon
User Management API - Provides a basic user management API for component
developers
Logging - Carbon kernel supports both Java logging as well as Log4j. Logs from both
these sources will be aggregated to a single output
Pluggable artifact deployer framework - Kernel can be extended to deploy any kind of
artifacts such as Web services, Web apps, Business processes, Proxy services, User
stores etc.
Deployment Synchronization - Provides synchronization of deployed artifacts across a
product cluster.
Ghost Deployment - Provides a lazy loading mechanism for deployed artifacts
Multi-tenancy support - The roots of the multi-tenancy in Carbon platform lies in the
Carbon kernel. This feature includes tenant level isolation as well as lazy loading of
tenants.
23. WSO2 Application Server
Main Characteristics:
Host and Manage Web Applications and Services
Support for RESTful services
Lightweight, Developer Friendly and Ease of Deployment
Easy to use management console
Customizable and Extensible
Integrated Security Management
Logging and Monitoring
Web Console, Integration with BAM
26. WSO2 Data Services Server
Expose Any Source of Data as Web Services or REST Resources
Agile Development Approach
Federation Support
RESTful Data Access
Secured and Managed Data Access
Transactional Data Access and Services
Data Transformation and Validation
High Performance, High Availability, Scalability & Stability
Lightweight, Developer Friendly and Easy to Deploy
29. WSO2 Governance Registry
Registry & Repository for Anything
SOA Governance
Configuration Governance
Development Process Governance
Framework for Governing Anything
Lifecycle Management
Design-Time Governance
Run-Time Governance
Change Management
Social Collaboration for Enterprise Governance
Lightweight, Developer Friendly and Easy to Deploy
Manage & Monitor
Web Console, Integration with BAM
32. WSO2 Identity Server
Entitlement Engine with XACML 3.0/2.0 and WS-XACML support.
OAuth Authorization Server with OAuth 2.0/1.0a support.
Identity Provisioning with SCIM 1.1.
SAML 2.0 Web Browser SSO Identity Provider.
OpenID 2.0 OpenID Provider.
Claim based Security Token Service(STS) with SAML 2.0/1.1 support.
Support for various types of User Stores such as JDBC, Cassandra, LDAP, Active Directory
in Read/Write mode.
Integrated Windows Authentication and webSEAL authentication.
XMPP based multi-factor authentication.
Improved User Management.
Claim Management.
User Profiles and Profile Management.
Separable front-end and back-end - a single front-end server can be used to administer
several back-end servers.
36. WSO2 ESB
5th 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
37. WSO2 ESB â Performance
LAB Production
Load 100 X 1000 X 24h 4B TPD
Throughput 5000 TPS 30,000 TPS
Latency <1 ms <3 ms
48. WSO2 API Manager : API Publisher
Publish APIs to external consumers and partners, as well as internal users; SOAP
and REST services are supported
Manage API versions (several versions can be deployed in parallel)
Govern the API lifecycle (publish, deprecate, retire)
Attach documentation (files, external URLs) to APIs
Apply Security policies to APIs (authentication, authorization)
Attach SLAs
Provision and Manage API keys
Track consumers per API
Monitor API usage and performance, SLA compliance
Gather consumers requirements
49. WSO2 API Manager : API Consumers
Find useful APIs by browsing or searching through the API Store: view top rated, top
used and featured APIs
Explore API documentation and ask questions to publisher
Register applications and obtain API keys
Subscribe to API changes and receive news
Evaluate APIs, rate APIs, and share comments
Request features and improvements from publishers
Participate in online forums
OAuth2 support for API access
55. WSO2 Business Activity Monitor
Data Agents
A re-usable Agent API to publish events to the BAM server from any application
(samples included)
Apache Thrift based Agents to publish data at extremely high throughput rates
Load balancing and HA for all data agents
Event Storage
Apache Cassandra based scalable data architecture for high throughput of writes
and reads
Carbon based security mechanism on top of Cassandra
Analytics
An Analyzer Framework with the capability of Writing the the Hive Scripts and run
Hadoop Jobs, which enables provides more performance in big data
This has the capability of writing and plugging in any custom analysis tasks
Scheduling capability of analysis tasks
56. WSO2 Business Activity Monitor
Visualization
Step-by-Step Easy Gadget Generation Wizard
Jaggery based gadgets generation
Capability use with most commonly used data sources, such as MySQL, H2, etc.
Google gadgets based dashboard
Tool Box Deployment
Easy deployment of default scenarios
Bundled required hive scripts and gadgets and deploy and undeploys with a click
go
capability to deploy custom toolboxes
Tool Boxes
Service stats toolbox
Mediation statistic toolbox
Activity Monitoring toolbox
61. WSO2 Complex Event Processor
WSO2 CEP works with Siddhi backend engine and supports pluggable architecture
when extensions can be added.
Extremely high performance processing engine and Extensible Query Language for
Temporal Event Stream Processing
Easily Integrates with Enterprise System - by RESTful HTTP protocol with JSON, JMS
MAP/XML/Text messages, SOAP, Email and SMS.
Event Capturing and Delivery Framework - Over Apache Thrift or HTTP supporting Java
and other languages (C/C++/C#)
Supports Highly Available Deployment - Using Hazelcast distributed cache as a shared
working memory.
Support for Long Duration Queries - Supports periodic snapshots to a scalable
persistence store (Apache Cassandra).
62. WSO2 Complex Event Processor
Tightly Integrates with WSO2 Business Activity Monitor - for recording and post
processing of events with Map-Reduce via Apache Hadoop.
Support Multiple Event Adaptor Types - WSO2 CEP supports WS-Event, JMS,
WSO2Event, WS-Event-Local, Email, Http, SMS and custom adaptor types.
Monitoring Support - WSO2 CEP supports for complete monitoring of events using the
event tracer and event statistics features. (WSO2 CEP supports system, per
execution plan/per deployment artifact monitoring.)
GUI Support - WSO2 CEP supports create,edit,delete operations on event adaptors,
event builders, execution plans and event formatters.
System monitoring.
CEP Dashboard support using UES for real-time event analysis.
Siddhi support for partitions, event tables, external time window and output rate
limiting.
Effective Event Publishing to Enterprise Systems and Custom Notifications.
More Convenient approach to plug custom event adaptors to receive and send events
63. CEP Performance
Complex Scenario (DEBS grand challenge) using event generated from a real football
game for DEBS. Use cases: Running analysis, Ball Possession and Shots on Goal,
Heatmap of Activity
100-150K Events/Sec
Setup: VM with 4 cores (@2.8 GHz), 4 GB RAM, SSD HDD, and 1GB Ethernet, and we replayed events from the same JVM.
66. WSO2 Business Process Server
Define and Execute Business Processes
Data Manipulation & Extensibility
Define Workflows Interacting with People
Create & Monitor Custom Key Performance Indicators (KPIs)
Graphical Process Modeling
Process Management via Graphical Administration Console
Integrates to Existing Environment
High Availability, Scalability and Stability
Lightweight, Developer Friendly and Easy to Deploy
Manage & Monitor
Web Console, Integration with BAM
67. WSO2 Business Rules Server
Create Services Implemented with Rules
Integration Ready Rule Services
Rule Repository for Management and Governance
Pluggable Rule Engine Support
Rule Execution Capability for Workflow Systems
Rule Execution Capability for WSO2 Enterprise Service Bus
High Performance, High Availability, Scalability & Stability
Lightweight, Developer Friendly and Easy to Deploy
Manage & Monitor
68. WSO2 Message Broker
JMS Queuing
JMS Pub/Sub
WS-Eventing
Message Browsing
Clustering Support
User based authorization for queues
Role based authorization for topics
Hierarchical Topics Subscriptions
In memory message store
Queue Message browsing with added UI support
69. WSO2 Message Broker
Message Re-Delivery Tries Configuration
Message Re-Delivery Header Field support
Clustering according to 5 deployment patterns
Sample text message sender tool in UI
Queue purging support
Message delivery fine tuning capabilities
Viewing details of the cluster using Management Console
Cassandra replication factor and read/write consistency levels configurations
71. WSO2 User Engagement Server
Visually Create Dashboards
Out-of-the-box Single-Sign-On (SSO)
Create Microsites
Out-of-the-box Single-Sign-On (SSO)
Publish Dashboard, Microsite and Gadgets
Web Component Discovery
Jaggery.js Web IDE
Govern Web Components
72. WSO2 Storage Server
Storage technology agnostic provisioning
Wide range of storage systems supported:
NoSQL stores: Cassandra
Unstructured stores (file systems): HDFS
Relational stores: MySQL, SQL Server
Complete Storage as a Service
Database migration to larger clusters
Setting up of database clusters for vertical scaling
Complete application lifecycle support
Database initialization
Data migration
Data backup and recovery
73. WSO2 Enterprise Store
Asset type extension mechanism
Asset life cycle customization
Subscription process customization
Asset view customization
Pre-loaded provisioning for default assets
Customizable Store Front view
Advanced search options in Store Front
Asset sorting via the Store Front
Store Front social platform
Asset Management
User Management
Asset Statistics
Automatic Permission Transition
Connect and Scale
79. WSO2 Private Cloud Architecture
WSO2 Stratos Platform as a Service
Application Platform Middleware Containers and Services
Carbon
Enterprise
Service Bus
Cartridge
Carbon
Application
Server
Cartridge
Stratos Foundation Services
Message
Service
Logging
Service
Securit
y
Service
Stratos PaaS Controller
Registry
Service
Relational
Data
Service
Elastic
Load
Balancer
Cloud
Controller/
Auto-scaler
Artifact
Distribution
Service
Deployment
Synchronizer
PaaS
Managemen
t
Console
Column
Storage
Service
File
Storag
e
Service
Task
Mgmt
Servic
e
Billing
Service
Other Carbon
Cartridges
PHP
Cartridge
Any
Pluggable
Cartridge
Service
Load
Monitor
Infrastructure Cloud (EC2, vmWare, Rackspace, OpenStack, Eucalyptus, etc)
83. WSO2 App Factory
Supports applications from cradle to grave
Combines application lifecycle management (ALM) and Application Platform-as-a-
Service (aPaaS)
Create, develop, test, deploy to production and retire applications with a single click
Supported, seamless solution that can be deployed in a private cloud or into a public
cloud
Integrates with existing Software Development Life Cycle(SDLC) tool chain
Supports development of any type of enterprise application