introduction to the wso2 carbon platform webinar

Post on 19-Jun-2015

146 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introduction to the WSO2 Carbon

Platform

Paul Fremantle CTO & CO Founder, WSO2

Sameera Jayasoma Architect, WSO2

WSO2

•  Founded in 2005 by acknowledged leaders in XML, Web Services Technologies & Standards and Open Source. Primary contributors to Apache Web Services projects started in 2001

•  Producing entire middleware platform 100% open source under Apache license

•  Business model is to sell comprehensive support & maintenance for our products

•  Technology OEM’d by IBM, Progress, Software AG, Alcatel, EMC, and CA

•  Venture funded by Intel Capital and Quest Software.

•  Global corporation with offices in Palo Alto, USA Portsmouth, UK & Colombo, Sri Lanka

•  250+ employees and growing.

WSO2 Carbon Platform

What is Carbon?

Carbon is a modular server runtime based on Java and OSGi

Built on top of Carbon are a set of middleware servers (App Server, ESB, Identity, API Manager, etc)

Carbon includes a set of re-usable core components:

• Clustering, User Management, Logging, JMX, ...

When WSO2 had four products: Web Services App Server

ESB BPS Data Services

Each was written by different teams Not enough re-use Needed a proper modular framework

What motivated this?

Benefits to WSO2 development

Agile Development •  Small product teams focus on their own area •  Re-use core Cloud-enablement •  All the products get the same cloud

enablement, multi-tenancy, clustering, etc •  Same code runs on the cloud as on-prem Best of Breed •  Each product gets enhancements to the core

Benefits to customers

Flexible deployment and architecture •  Fit to your architecture Robust architecture •  Proven at high scale Easy to extend •  Well defined approach to create Carbon components

(first class extensions) Consistent deployment •  The same CAR files work on-prem, cloud images and

on StratosLive Consistent Management and Operations •  Adding new servers and function is smooth

OSGi

Originally created in 1999 to create a component runtime for Java in embedded devices (e.g. in-car)

In 2003 Eclipse chose OSGi to manage components

Provides a module system for Java: •  Better control than packages •  Versioning •  Dynamic loading

Features in Carbon

Eclipse p2

•  Manages the packaging of OSGi bundles into features

•  Supports deploying, undeploying, checkpoints

•  Advanced features included shared repositories

p2 in Eclipse

Feature Provisioning

p2 in Carbon

WSO2 Carbon Kernel

•  Carbon kernel is the framework, foundation, the model behind the Carbon platform.

•  Carbon kernel has introduced a composable server architecture through which we have composed a number of products. o  Product is merely a set of components/features which runs on the

Carbon kernel. o  You get to mix and match these components and build your own

product that matches with your requirements o  If you require data service feature in your ESB, connect to our online

feature repository and install the data services feature.

Composable Server Architecture

Consistency of config / operations

•  Any Carbon based product will have this directory structure.

•  If you are familiar with installing, configuring and operating Application Server, same knowledge applies to other products.

•  Same theory applies to the web-based management console as well.

Carbon Application (C-App)

WSO2 Developer Studio 3.2

Minification

Image credit (c) Adam Fremantle 1961

Iden%ty  Server  minified  •  Requirement:  run  WSO2  IS  on  exis4ng  hardware  in-­‐store  

•  1Gb  machine  with  less  than  256Mb  free  

•  Minified  deployment    •  Used  Carbon/OSGi  to  remove  unnecessary  services  •  Ran  all  scenarios  in  96Mb  heap  •  Met  customer  requirements  with  just  128Mb  heap!  

Scenario 96Mb 256Mb

Deployment Std Min Std Min

STS OOM 166 147 185

SAML2 OOM 499 140 609

OAuth OOM 786 OOM 827

XACML OOM 874 305 929

Raspberry  Pi  Cluster  WSO2  Con  London  2013  •  Eben  Upton  keynote  

•  Decided  to  run  our  mobile  app  on  a  Pi  Cluster  

•  Each  Pi  has:  •  700Mhz  ARM  •  512Mb  RAM  

•  For  WSO2Con  we  ran  an  8-­‐Pi  cluster  •  Using  minified  Carbon  •  256Mb  heap  size  

•  350  tps  across  8  Pis  •  ~  44  tps  /  Pi  

Layered Scaling

Server Profiles

•  Enables a product to run in multiple modes/profiles •  A profiles of a product describes the runtime behaviour. •  Each profile 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 wso2carbon.sh -Dprofile=profile_name

Deployment Synchronization

Clustering

Selected Customers

WSO2 engagement model

QuickStart Development Support Development Services Production Support

Turnkey Solutions WSO2 Mobile Services Solution

WSO2 FIX Gateway Solution

WSO2 SAP Gateway Solution

Q&A?

Thank You!!!

top related