21
Using the Carbon Architecture to build a Fit-for-Purpose Platform Sameera Jayasoma Architect @ WSO2

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

Embed Size (px)

DESCRIPTION

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.

Citation preview

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

Using the Carbon Architecture to build a

Fit-for-Purpose Platform

Sameera JayasomaArchitect @ WSO2

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

WSO2 Carbon

● Tag cloud

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

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..

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

What is Carbon?

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

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.

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

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.

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

Feature Provisioning in Carbon

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

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

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

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.

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

Composite Application model (C-App)

● 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.

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

Deployment Synchronization

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

Deployment Choices

StratosPrivatePaaS

StratosLivePublicPaaS

CarbonOn-Premise

C-App

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

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 PublisherAPI SubscriberAPI GatewayAuth Server

● One download, multiple servers.e.g. sh wso2carbon.sh -Dprofile=profile_name

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

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.

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

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

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

WSO2 Platform Adaptability

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

What Carbon Platform means for your Business

● Simpler, speedier projects.

● Reduced risk of failure

● Required only few specialized consultants

● Platform evolution.

Page 18: Using the Carbon Architecture to Build a Fit-for-Purpose Platform
Page 19: Using the Carbon Architecture to Build a Fit-for-Purpose Platform

WSO2 Carbon 5 (C5)

● Next generation of the Carbon platform.

● Still at the milestone 1 level.

● Planning to release in 6 months.

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

Q&A ???

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

Thank You!!!