WSO2 Carbon Platform
● WSO2 Carbon is a
○ enterprise-class middleware platform.
● All WSO2 middleware products are build on top of
Application Server, Enterprise Service Bus, Identity Server, Business
Process Server, API Manager..
● Offers a wide-range of reusable core components to
Security, Clustering, Caching, Logging, Monitoring, User management..
Carbon Kernel Runtime
● Modular server development framework
Defines how to develop modules/components in Carbon
Defines how these modules collaborate at runtime.
Provides a provisioning solution for the Carbon platform.
● Provides a minimal runtime for any WSO2 middleware
○ A WSO2 middleware product can be considered as a collection of
related modules/components running on this minimal runtime.
Under the covers: OSGi, P2
● OSGi as the fundamental modularization technology in
● OSGi provides a better module system for Java:
Better control than packages
● Carbon Relies on Eclipse’ open source
implementation of OSGi - Equinox.
● Provisioning solution based on Equinox P2
P2 is generic provisioning solution for OSGi based systems.
Benefits of WSO2 Carbon
● WSO2 technology as well our customers have
benefitted from this componentized middleware
● Enables agile development
Small teams focusing on their own features
Time to market factor for product teams.
● Best of breed
Each product brings enhancements to the core.
● No Internal integration challenges.
Eliminated these challenges by sharing cross-cutting features
across all the middleware products
e.g. Security, User mgt, Clustering, Multi-tenancy, Logging
Consistency in usability
● User experience is same
across all the products.
● Reduced learning curve.
● Any Carbon based product
will have this directory
● If you are familiar with
installing, configuring and
operating Application server,
same applies all the other
Composite Application model (CApp)
● Improved definition of “enterprise project”.
● WSO2 developer studio allows to package config and
code of an enterprise project into a single archive. (a
● A CAR file can be deployed to different runtimes.
● Each runtime will only deploy the artefacts which match
with the role that the runtime is playing.
e.g. ESB runtime will not deploy a data service in the CAR file
unless otherwise the default configuration is altered.
● Enables a product to run in multiple modes/profiles
● A profile of a product describes the runtime behaviour.
● Each ale contains only the required set of components
E.g. A single API Manager distribution can play following
● One download, multiple servers.
e.g. sh wso2carbon.sh -Dprofile=profile_name
● Extensibility is provided from the heart of the Carbon
● Componentized architecture allows you to enrich the
rich set of features of Carbon platform.
● Certain Extensions are treated as first class citizens of
Core Platform Components
● User Manager
User provisioning and access model
APIs to integrate third party user stores
Provides repository API to store any type of data of metadata.
● Distributed Caching and Clustering
Based use Hazelcast
● Deployment Engine
Deployment Synchronization and APIs to plugin any repository.
● UI framework
Based on Apache Tiles, it provides clean API to plugin your custom UI
● Data sources