SlideShare a Scribd company logo
Building a scalable multi-tenanted Cloud-native
               Application Server
                     using
            Tomcat, Axis2 & Synapse
Building a scalable
            multi-tenanted Cloud-native
                 Application Server
                        using
             Tomcat, Axis2 & Synapse

        Afkham Azeez              Selvaratnam Uthaiyashankar

azeez@{apache.org , wso2.com}   shankar@{apache.org, wso2.com}
          WSO2 Inc                        WSO2 Inc
About the Presenters
• Afkham Azeez
   –   PMC member Apache Axis, Committer Synapse & Web Services
   –   Member, Apache Software Foundation
   –   Co-author, Axis2 Web Services
   –   Director of Architecture, WSO2 Inc
   –   Blog: http://blog.afkham.org


• Selvaratnam Uthaiyashankar
   – PMC member Apache Axis & committer Web Services
   – Member, Apache Software Foundation
   – Senior Manager & Senior Architect, WSO2 Inc




                                  © WSO2 2011
Agenda
•   Overall Architecture
•   Elastic Load Balancer
•   AppServer
•   Logging
•   Data & storage
•   Metering & billing
Cloud Nativity
Overall Architecture



Clients   ELB            AS1          AS2        AS3                  ASn




                               Application Server - Elastic Cluster
Elastic Load Balancer

- Based on Apache Synapse & Apache Tribes
Highlevel Architecture
Service Cluster Aware Load Balancing
Practical Example
Configuration
Proxy Port to Real Port Mapping
Proxy Port to Real Port Mapping
Synapse Message Flow
Membership Channels
AppServer

- Based on Apache Tomcat, Apache Tribes & Apache
                     Axis2
Features
• Webapp hosting
  • Uses embedded Tomcat
• Services hosting
  •   Axis2 AAR services
  •   JAXWS services
  •   Data services
  •   etc…
Tomcat
Tomcat
•   Stuck thread detection valve
•   Multi-tenant access log
•   Webapp lazy loader valve
•   Tenant-aware Tomcat realm
•   Tenant-aware management console
•   Tenant-aware webapp contexts
•   Tenant-aware session manager
Clients
 Tenant Identification &
Tenant Context Creation



     Access Log Valve




     Lazy Loader Valve




Stuck Thread Detector Valve
                              Request Interception



             WebApp
Management Console
Management Console
Tomcat Sample Webapp
Tenant-aware Session Manager
User & Role Management
web.xml - Integrating Identity into
             WebApps




Automatically ties into Identity Management
infrastructure
SaaS Mode
• One webapp shared amongst all tenants




• One webapp shared amongst selected tenants
Axis2
Messaging

                            Messaging Engine


                      In
         Transports
Client




                      Out                      Message    Service
                                               Receiver    Impl
                      In Fault

                      Out Fault
Multi-tenant Message Receiver
Axis2 Configuration & Contexts
Tenants & Super Tenant
                Tenant: foo.com




Super Tenant




                  Tenant: bar.com
Pluggable Deployers

                        Deployment Engine




                                                POJO
Webapp
                                               Services

              Data                   JAXWS
             Services               Services
Pluggable Deployers
                           Tenant: foo.com



Super Tenant




                           Tenant: bar.com
Ghost Artifact Deployer
• Lazy loading deployment artifacts
• Load the tenant configuration & only the
  required artifact
• Unload artifacts & tenants after a period of
  inactivity
Ghost Artifact Deployer - Performance
Initial Response Time (ms)




                                 Number of artifacts
Deployment Synchronizer
Tenant-aware Security Manager
• Main security manager delegates security
  verifications to tenant level security managers
• Different tenants can have different security
  policies
• Security policies are tied to the multi-tenancy
  package assigned to the tenant
Logging
Distributed Logging
• Every service and custom applications logs are
  captured by the log4j/commons loggings
  settings
• Logs are partitioned & stored by tenant
• Logs are sent to the Manager service via
  syslog
• Logs are then viewable / downloadable by
  tenant admins
MT-Logging Deployment Architecture
Log Viewer – Stratos Manager {Super-Tenant}
Log Viewer – Stratos Data Services Server {Tenant User}
AppServer Logs
Data & Storage
WSO2 Cloud Data Solutions
• WSO2 Data Server
  •   Carbonized Cassandra Cluster
  •   Database cluster
  •   Carbonized HDFS Cluster
• <Data> PaaS Offerings
  •   Apache Cassandra as a Service
  •   Relational Database as a Service
  •   HDFS as a Service
• We are also planning MapReduce as a Service as Future
  work.
Polyglot Data Architecture
Metering & Billing
Metering
• Each services collects
     •   Number of service calls
     •   Request/response bandwidth
     •   Registry bandwidth (upload, download)
     •   Total registry space usage

• Send above to BAM publishers, which sends the data to
  the BAM Service

• BAM summarizes periodically

• Summarized data will be centrally accessible
Throttling

• Restrict tenants from using more than the
  allocated resources, depending on the usage
  plan
    • Number of users per tenant
    • Storage space
    • Number of requests to webapps, services etc
Usage Metering/Throttling
• Number of users
• Incoming and outgoing bandwidths
• Request Response count
Billing
• Scheduled invoice generation

• Ability to view past invoices and the
  current(interim) invoice
• Securely pay the invoice via Paypal

• Notifies the customer via email on received
  payments
• Notifies the super-admin on customers
  exceeding the credit limit
• Presents a summary view to the super-admin
Building a multi-tenanted Cloud-native AppServer
Recap
• Attributes essential for an AppServer running
  on the Cloud
  – Elasticity, user management, data, logging,
    metering, throttling, billing
• How Tomcat, Axis2 & Synapse were used to
  build a cloud-native AppServer
QUESTIONS?
Thank You!

More Related Content

PPTX
Introduction to Microservices Patterns
PPTX
AWS Serverless Introduction
PPTX
Amazon Web Services - Running Containers with ECS
PPTX
Cf summit2014 roadmap
PDF
Load Balancers vs IIS ARR or a Web Application Proxy (WA) for HA
PDF
8 Source Code Cloudstack Developer Day
PPTX
Whitebase : Assault Carrier for Micro-Services
PDF
Lessons learned migrating 100+ services to Kubernetes
Introduction to Microservices Patterns
AWS Serverless Introduction
Amazon Web Services - Running Containers with ECS
Cf summit2014 roadmap
Load Balancers vs IIS ARR or a Web Application Proxy (WA) for HA
8 Source Code Cloudstack Developer Day
Whitebase : Assault Carrier for Micro-Services
Lessons learned migrating 100+ services to Kubernetes

What's hot (8)

PPTX
NIC - Windows Azure Pack - Level 300
PPTX
Migration of an Enterprise UI Microservice System from Cloud Foundry to Kuber...
PDF
6 Roadmap Cloudstack Developer Day
PPTX
AWS network services
PPTX
Windows Azure Pack : How to bring windows azure benefits to your DC
PDF
Middleware in the cloud platform-v2
PPTX
Continuous Delivery in the AWS Cloud
PDF
WSO2 Cloud Middleware
NIC - Windows Azure Pack - Level 300
Migration of an Enterprise UI Microservice System from Cloud Foundry to Kuber...
6 Roadmap Cloudstack Developer Day
AWS network services
Windows Azure Pack : How to bring windows azure benefits to your DC
Middleware in the cloud platform-v2
Continuous Delivery in the AWS Cloud
WSO2 Cloud Middleware
Ad

Viewers also liked (7)

PPTX
HOW CLOUD PLATFORMS ARE EVOLVING TO SUPPORT WEB-SCALE DIGITAL AND IT BUSINESS
PDF
CloudLightning - Multiclouds: Challenges and Current Solutions
PPTX
Architectural Tactics Support in Cloud Computing Providers: The Jelastic Case
PPT
Business plan
PPTX
Tour de Clouds: Understanding Multi-Cloud Integration
PPTX
Olafy your cloud with ActOnCloud
PPTX
SnapLogic Live: Powering Cloud Analytics
HOW CLOUD PLATFORMS ARE EVOLVING TO SUPPORT WEB-SCALE DIGITAL AND IT BUSINESS
CloudLightning - Multiclouds: Challenges and Current Solutions
Architectural Tactics Support in Cloud Computing Providers: The Jelastic Case
Business plan
Tour de Clouds: Understanding Multi-Cloud Integration
Olafy your cloud with ActOnCloud
SnapLogic Live: Powering Cloud Analytics
Ad

Similar to Building a multi-tenanted Cloud-native AppServer (20)

PDF
Summer School Delivering On-Demand Shared Middleware Services
PPTX
Open Source Middleware for the Cloud: WSO2 Stratos
PDF
Securing your Cloud Application using StratosLive
PDF
Understanding the WSO2 Platform and Technology
PPTX
PaaS TCO
PDF
Beyond Economics - Cloud as a Business Enabler
PDF
Paying for PaaS
PDF
Summer School - Demonstrating Cloud Value
PDF
Amdatu - ApacheCon NA 2011
KEY
Open World Forum 2012 : eXo & the Cloud
PPT
Building Cloud Native Software
PPT
Making Apache Tomcat Multi-tenant, Elastic and Metered
PDF
WSO2 Stratos 2010 September Workshop
PDF
Multi-Tenant SOA Middleware for Cloud Computing
PDF
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
PDF
Modern Software Architecture - Cloud Scale Computing
PDF
Netflix Global Cloud Architecture
PDF
Introducing WSO2 App Factory 2.0
PDF
Quality control in a cloudy world
PPTX
Windows Azure Platform
Summer School Delivering On-Demand Shared Middleware Services
Open Source Middleware for the Cloud: WSO2 Stratos
Securing your Cloud Application using StratosLive
Understanding the WSO2 Platform and Technology
PaaS TCO
Beyond Economics - Cloud as a Business Enabler
Paying for PaaS
Summer School - Demonstrating Cloud Value
Amdatu - ApacheCon NA 2011
Open World Forum 2012 : eXo & the Cloud
Building Cloud Native Software
Making Apache Tomcat Multi-tenant, Elastic and Metered
WSO2 Stratos 2010 September Workshop
Multi-Tenant SOA Middleware for Cloud Computing
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
Modern Software Architecture - Cloud Scale Computing
Netflix Global Cloud Architecture
Introducing WSO2 App Factory 2.0
Quality control in a cloudy world
Windows Azure Platform

More from Afkham Azeez (20)

PDF
SRE & Kubernetes
PDF
Microservices Resiliency with BallerinaLang
PDF
WSO2Con USA Microservices Transactions
PPTX
Introduction to WSO2 Microservices Framework for Java (MSF4J) 2.0
PPTX
Microservices with MSF4J - WSO2 Meetup
PPTX
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
PPTX
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
PPTX
WSO2Con 2015-us-introduction-to-mss-v2
PPTX
[WSO2Con Asia 2014] Accelerating Mobile App Development with MBaaS
PPTX
Java Colombo: Developing Highly Scalable Apps
PPTX
WSO2Con 2013 - The Integration Game Changer: WSO2 Integration Cloud
PPTX
Unleashing creativity through Arduino
PPTX
Wso2 con raspberry-pi-cluster
PPTX
Adjusting carbon topology to match high availability scenario requirements
PPTX
A multi-tenant architecture for Apache Axis2
PPS
Colombo
PDF
Intelli J IDEA
PPTX
WSO2con 2011: Introduction to Stratos
PPTX
WSO2Con 2011: Introduction to Stratos
PPTX
WSO2Con 2011: Introduction to the WSO2 Carbon Platform
SRE & Kubernetes
Microservices Resiliency with BallerinaLang
WSO2Con USA Microservices Transactions
Introduction to WSO2 Microservices Framework for Java (MSF4J) 2.0
Microservices with MSF4J - WSO2 Meetup
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
WSO2Con 2015-us-introduction-to-mss-v2
[WSO2Con Asia 2014] Accelerating Mobile App Development with MBaaS
Java Colombo: Developing Highly Scalable Apps
WSO2Con 2013 - The Integration Game Changer: WSO2 Integration Cloud
Unleashing creativity through Arduino
Wso2 con raspberry-pi-cluster
Adjusting carbon topology to match high availability scenario requirements
A multi-tenant architecture for Apache Axis2
Colombo
Intelli J IDEA
WSO2con 2011: Introduction to Stratos
WSO2Con 2011: Introduction to Stratos
WSO2Con 2011: Introduction to the WSO2 Carbon Platform

Recently uploaded (20)

PPTX
Big Data Technologies - Introduction.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
Cloud computing and distributed systems.
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
KodekX | Application Modernization Development
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Electronic commerce courselecture one. Pdf
PPTX
A Presentation on Artificial Intelligence
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
DOCX
The AUB Centre for AI in Media Proposal.docx
Big Data Technologies - Introduction.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Per capita expenditure prediction using model stacking based on satellite ima...
20250228 LYD VKU AI Blended-Learning.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Cloud computing and distributed systems.
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
NewMind AI Monthly Chronicles - July 2025
NewMind AI Weekly Chronicles - August'25 Week I
KodekX | Application Modernization Development
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Electronic commerce courselecture one. Pdf
A Presentation on Artificial Intelligence
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
The AUB Centre for AI in Media Proposal.docx

Building a multi-tenanted Cloud-native AppServer

Editor's Notes

  • #29: Shankar will take over from here