[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
WSO2 Year End Tech Update 2012
1. WSO2 Technical Update
2012 in review
Paul Fremantle
Chief Technology Officer and Co-
Founder
2. WSO2 Product Offerings
Carbon Middleware Platform Developer
Studio
Stratos PaaS Foundation App Factory
Stratos'Controller'
File' Task'' Meter'
'Iden. ty' Logging' Security' Registry' Data' Storage' Mgmt' and' App Fac t o r y !
Mgmt''
Foundation!
'Service' Service' Service' Service' Service' Service' Service' Billing'
' Service' App Fac t o r y !
PaaS!
Stratos'Controller' App Fac t o r y ! App Fac t o r y !
'
' Elas. c'' Cloud' Artefact''
Deployment' Management' Load''
' Load' Controller/' Distribu. on'
Synchroniser' Console' Monitor'
Balancer' Autoscaler' Service'
3. Major Releases
• Carbon 4.0
– Major updates of all products
• New (or completely updated):
– WSO2 API Manager 1.x
– WSO2 Storage Server 1.0
– WSO2 Business Activity Monitor 2.0
– WSO2 Complex Event Processor 2.0 / Siddhi
– WSO2 Message Broker 2.0
– Jaggery 0.9
4. WSO2 Product Offerings
Carbon Middleware Platform Developer
Studio
Stratos PaaS Foundation App Factory
Stratos'Controller'
File' Task'' Meter'
'Iden. ty' Logging' Security' Registry' Data' Storage' Mgmt' and' App Fac t o r y !
Mgmt''
Foundation!
'Service' Service' Service' Service' Service' Service' Service' Billing'
' Service' App Fac t o r y !
PaaS!
Stratos'Controller' App Fac t o r y ! App Fac t o r y !
'
' Elas. c'' Cloud' Artefact''
Deployment' Management' Load''
' Load' Controller/' Distribu. on'
Synchroniser' Console' Monitor'
Balancer' Autoscaler' Service'
6. Carbon Core improvements and
new features
• Enhanced Deployment Synchronizer
• Deployment performance improvements
• Management & worker node separation
• JDK 1.7 support
• Better integration with Tomcat 7
• Upgrading Equinox SDK (OSGi runtime) to v3.7
• P2 Repository: Features grouped by product
• Multi-tenancy in Carbon
7. WSO2 ESB in 2012
• API definitions / improved REST support
• Improved JSON support and better
performance
• Mediation Libraries
– Better support for plugging in cloud adapters and
new connectors
• MSMQ support
• SAP Adapter IDocs and experimental BAPI
• Increased performance (ongoing work)
8. WSO2 App Server in 2012
• Jaggery support
• CXF support for JAX-WS and JAX-RS
• Much improved Tomcat support
– Now uses Tomcat configuration directly
• Incorporation of Mashup Server capabilities
• Data Services updates
• All C4 improvements
9. Governance Registry in 2012
• Notification bar
• SCM plugin support for Github/SVN/etc
• RXT improvements for meta-modelling
• Automatic APIs for RXTs
• Lifecycle Audit
• Improved Reporting
• and much much more
10. Identity Server in 2012
• XACML 3.0
• OAUTH 2.0
• SCIM 1.1
• IWA Authenticator
• Support for Multiple User Stores
• WS-XACML
• SAML2 Basic Attribute Profile
• Read/Write Active Directory User Store Manager
• Plus much more
12. • 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.
13. Who is Jaggery for?
Teams or organizations who:
• Currently use Java/Tomcat now looking for dynamic
language support
• Want to rapidly create websites, REST services and mobile
sites
– Using Javascript and HTML only to focus the skills required
• Want high productivity and a robust framework that works
using existing effective infrastructure
• Wish to migrate from using PHP or similar frameworks to a
more robust, manageable approach
• Wish to have a simple script/doc-oriented/HTML based
approach for the front-end
– and a robust SOA infrastructure for the backend
17. 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 ));
18. Performance of WSO2 CEP
Simple filter without window
from StockTick[price >6] return symbol, price
19. WSO2 Product Offerings
Carbon Middleware Platform Developer
Studio
Stratos PaaS Foundation App Factory
Stratos'Controller'
File' Task'' Meter'
'Iden. ty' Logging' Security' Registry' Data' Storage' Mgmt' and' App Fac t o r y !
Mgmt''
Foundation!
'Service' Service' Service' Service' Service' Service' Service' Billing'
' Service' App Fac t o r y !
PaaS!
Stratos'Controller' App Fac t o r y ! App Fac t o r y !
'
' Elas. c'' Cloud' Artefact''
Deployment' Management' Load''
' Load' Controller/' Distribu. on'
Synchroniser' Console' Monitor'
Balancer' Autoscaler' Service'
20. Developer Studio 2.1
Develop and Deploy
• Apache Axis2 services
• Apache CXF services
• JAX-WS services
• Data services for WSO2 Data Services Server
• BPEL processes for Apache ODE and WSO2 Business
Process Server
• ESB artifacts for Apache Synapse and WSO2 Enterprise
Service Bus
• Registry resources for WSO2 Governance Registry
• Webapps for Apache Tomcat and WSO2 Application Server
• Gadgets for Apache Shindig and WSO2 Gadget Server
21. New capabilities in alpha/preview
• ESB 4.6.0
– Focus on performance
• Developer Studio 3.0.0
– New flow-based ESB tooling
• Stratos 2.0
– Focus on polyglot runtime
• App Factory 1.0
– Cloud-based development
23. WSO2 Product Offerings
Carbon Middleware Platform Developer
Studio
Stratos PaaS Foundation App Factory
Stratos'Controller'
File' Task'' Meter'
'Iden. ty' Logging' Security' Registry' Data' Storage' Mgmt' and' App Fac t o r y !
Mgmt''
Foundation!
'Service' Service' Service' Service' Service' Service' Service' Billing'
' Service' App Fac t o r y !
PaaS!
Stratos'Controller' App Fac t o r y ! App Fac t o r y !
'
' Elas. c'' Cloud' Artefact''
Deployment' Management' Load''
' Load' Controller/' Distribu. on'
Synchroniser' Console' Monitor'
Balancer' Autoscaler' Service'
24. Stratos 2.0 Alpha
Available now
• 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
25. WSO2 Stratos Cloud Architecture
WSO2 Stratos Platform as a Service
Application Platform Middleware Containers and Services
Carbon Carbon
Any
Enterprise Application Other Carbon PHP
Pluggable
Service Bus Server Cartridges Cartridge
Cartridge
Cartridge Cartridge
Stratos Foundation Services
Relational Column File Task
Message Logging Security Registry Billing
Data Storage Storage Mgmt
Service Service Service Service Service
Service Service Service Service
Stratos PaaS Controller
Elastic Cloud Artefact PaaS Service
Load Controller/ Distribution Deployment Management Load
Balancer Auto-scaler Service Synchroniser Console Monitor
Infrastructure Cloud (EC2, vmWare, Rackspace, OpenStack, Eucalyptus, etc)
26. Understanding Cartridges
• A cartridge is a package of code/configuration
that plugs into Stratos to offer a new PaaS
Service
– e.g. Carbon ESB cartridge plugs in to provide a
Stratos ESB-as-a-Service
– PHP Cartridge plugs in to provide PHP-as-a-Service
• A cartridge is a VM image plus config
– In Stratos 2.0 you need a VM per IaaS
• e.g. need to create both EC2 and LXC image to use on
both IaaS
27. Virtualization models
Stratos 2.0 supports all these
Pure hardware models
(in combination too)
Virtual Machine
Isolation
LXC
Shared Process
(e.g. Carbon MT)
Resource Utilization
28. WSO2 Product Offerings
Carbon Middleware Platform Developer
Studio
Stratos PaaS Foundation App Factory
Stratos'Controller'
File' Task'' Meter'
'Iden. ty' Logging' Security' Registry' Data' Storage' Mgmt' and' App Fac t o r y !
Mgmt''
Foundation!
'Service' Service' Service' Service' Service' Service' Service' Billing'
' Service' App Fac t o r y !
PaaS!
Stratos'Controller' App Fac t o r y ! App Fac t o r y !
'
' Elas. c'' Cloud' Artefact''
Deployment' Management' Load''
' Load' Controller/' Distribu. on'
Synchroniser' Console' Monitor'
Balancer' Autoscaler' Service'
29. App Factory
• Cradle-to-grave platform for
enterprise applications Project and Team
Management
– Create project, SCM, Continuous
Deployment
Software
development
continuous build, automated workflow
testing, lifecycle management,
dev/test/prod deployment Test Automation
Governance and
Compliance
environments, versioning,
retirement
• Sits on Stratos
– Apps can be Carbon apps or
Continuous Development
Integration Dashboards
others via pluggable Stratos
cartridges
• Deployments Continuous Build Develop Code
– Ecosystem around an
enterprise Source Control Issue Tracking
– Inside the enterprise as ITaaS
12/21/2012 29
30. Open Source DevOps, Agile, and Cloud Tooling
Project and
Team
Management Software
Continuous
development App Factory
Deployment
workflow
Governance
Test
and
Automation App Factory
Compliance
Continuous Development
Integration App Factory Dashboards App Factory
Continuous Develop
Build Code
Source Issue
Control Tracking
12/21/2012 30
31. AppFactory uses and examples
• Regulated industries - healthcare, banking, betting, government, military:
– Create a conformance environment where all applications meet regulatory
requirements
– e.g. Betfair App Cloud
• Ecosystem:
– Create an ecosystem app cloud where partners can create and deploy apps
– e.g. Betfair, Boeing, Telco, etc
• Customization layer for existing SaaS:
– Create an environment where users can add function or customize an existing
PaaS, e.g. SugarCRM
• System Integrators:
– Create a managed application space where SIs can create, deploy and manage
applications for their customers
– Make SI applications repeatable and more effective
• Internal Agility:
– Speed up development of internal apps and integration
35. Case Studies in 2012
• 2Degrees Mobile – middleware for telcos
• AAA Ohio – building a mobile app
• eBay webinar – handling 1bn API calls/day
• FPDigital joint webinar on OEM
• Workshop with Suva’s Igor Berchtold
• John Keels – SAP integration with Point of Sale
• and many more
36. Focus areas for 2013
• Continued evolution of our tooling
• Focus on Cloud integration
– Cloud adapters: Twilio, Fedex, LinkedIn, etc
• Stratos 2.0
• App Factory
• API Management
37. Summary
• 2012 has been a good year for WSO2
– Significant customer growth
– Focus on scalability and deployment
– Continued strong R&D – major enhancements to
existing products plus new product development
– Move to become a strong player in API Management
• 2013 looks even better
– App Factory 1.0 and Stratos 2.0
– ESB 4.6.0 and Dev Studio 3.0.0
– WSO2Con 2013 in London