Using the Carbon Architecture to Build a Fit-for-Purpose Platform


Published on

This is the slide-deck of the talk that I did for the WSO2Con 2013 US version which was held in San Francisco, CA. My goal was to talk about WSO2 Carbon platform, its architecture and how you can leverage this modular architecture to build a fit-for-purpose platform.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Using the Carbon Architecture to Build a Fit-for-Purpose Platform

  1. 1. Using the Carbon Architecture to build a Fit-for-Purpose Platform Sameera Jayasoma Architect @ WSO2
  2. 2. WSO2 Carbon ● Tag cloud
  3. 3. WSO2 Carbon Platform ● WSO2 Carbon is a ○ lean, ○ modular, ○ enterprise-class middleware platform. ● All WSO2 middleware products are build on top of Carbon ■ Application Server, Enterprise Service Bus, Identity Server, Business Process Server, API Manager.. ● Offers a wide-range of reusable core components to middleware products. ■ Security, Clustering, Caching, Logging, Monitoring, User management..
  4. 4. What is Carbon?
  5. 5. 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 product. ○ A WSO2 middleware product can be considered as a collection of related modules/components running on this minimal runtime.
  6. 6. Under the covers: OSGi, P2 ● OSGi as the fundamental modularization technology in WSO2 Carbon. ● OSGi provides a better module system for Java: ■ ■ ■ Better control than packages Versioning Dynamic loading ● 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.
  7. 7. Feature Provisioning in Carbon
  8. 8. Benefits of WSO2 Carbon ● WSO2 technology as well our customers have benefitted from this componentized middleware platform. ● 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
  9. 9. Consistency in usability ● User experience is same across all the products. ● Reduced learning curve. ● Any Carbon based product will have this directory hierarchy. ● If you are familiar with installing, configuring and operating Application server, same applies all the other products.
  10. 10. 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 “car” file) ● 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.
  11. 11. Deployment Synchronization
  12. 12. Deployment Choices Stratos Private PaaS StratosLive Public PaaS C-App Carbon On-Premise
  13. 13. Server Profiles ● 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 roles. API Publisher API Subscriber API Gateway Auth Server ● One download, multiple servers. e.g. sh -Dprofile=profile_name
  14. 14. Unprecedented Extensibility ● Extensibility is provided from the heart of the Carbon platform. ● Componentized architecture allows you to enrich the rich set of features of Carbon platform. ● Certain Extensions are treated as first class citizens of the platform.
  15. 15. Core Platform Components ● User Manager ○ ○ User provisioning and access model APIs to integrate third party user stores ● Registry ○ Provides repository API to store any type of data of metadata. ● Distributed Caching and Clustering ○ Based use Hazelcast ● Deployment Engine ○ ○ Ghost deployment Deployment Synchronization and APIs to plugin any repository. ● UI framework ○ Based on Apache Tiles, it provides clean API to plugin your custom UI components. ● Data sources
  16. 16. WSO2 Platform Adaptability
  17. 17. What Carbon Platform means for your Business ● Simpler, speedier projects. ● Reduced risk of failure ● Required only few specialized consultants ● Platform evolution.
  18. 18. WSO2 Carbon 5 (C5) ● Next generation of the Carbon platform. ● Still at the milestone 1 level. ● Planning to release in 6 months.
  19. 19. Q&A ???
  20. 20. Thank You!!!