Leveraging azure and cello for delivering highly scalable multi tenant

16
Leveraging Azure and Cello for Delivering Highly Scalable Multi-Tenant SaaS Solutions The smartest and fastest way to build configurable, high quality applications that can be deployed on any cloud…

Transcript of Leveraging azure and cello for delivering highly scalable multi tenant

Page 1: Leveraging azure and cello for delivering highly scalable multi tenant

Leveraging Azure and Cello for

Delivering Highly Scalable Multi-Tenant

SaaS Solutions

The smartest and fastest way to build configurable, high quality applications that can be deployed on any cloud…

Page 2: Leveraging azure and cello for delivering highly scalable multi tenant

Agenda

Understanding Multi-Tenancy Models

Why Scalability is critical for Multi-Tenant Architecture?

What is Cello and How does Azure and Cello work together?

Advantages of Azure and Cello combination

Deployment in Azure

Benefits for ISVs

SaaS Life Cycle Management Solution

Page 3: Leveraging azure and cello for delivering highly scalable multi tenant

Multi-Tenancy Models

Single Tenant

Multi Tenant

Single and Multi Tenant are the

two approaches that ISVs

typically take for delivering

their SaaS solution.

Single Tenant Solutions

typically involve setting up

separate instances for each

customer

Multi Tenant Solutions service

multiple customers (tenant)

from a single instance, there by

sharing all the hardware

resources

SaaS Life Cycle Management Solution

Page 4: Leveraging azure and cello for delivering highly scalable multi tenant

Scalability in Multi-Tenant Architecture

Why Scalability is critical for Multi-Tenant architecture?

Multi-Tenant systems experience heavy

load due to the fact that single instance

serves multiple customers

Load on the system is going to be

directly proportional to the number of

customers serviced.

SaaS Business model is only profitable

with higher number of customers.

Therefore, it’s suicidal if you are not

building a multi-tenant architecture that

is scalable at all levels.

SaaS Life Cycle Management Solution

Page 5: Leveraging azure and cello for delivering highly scalable multi tenant

Azure & Cello

How does Azure and Cello work

Together?

SaaS Life Cycle Management Solution

Page 6: Leveraging azure and cello for delivering highly scalable multi tenant

Azure & Cello – Complement Each Other

SaaS Life Cycle Management Solution

CacheActive

DirectoryStorage Database

Traffic

ManagerAzure Watch Auto Scale

Online

Services

For ISVsCello provides the SaaS

Engineering/Management features

Azure provides the infrastructure

management features.

Page 7: Leveraging azure and cello for delivering highly scalable multi tenant

What is Cello?

SaaS Life Cycle Management Solution

Techcello is a cloud-ready, SaaS Application

Development Framework for Azure platform

Can be used to,

Build new SaaS products

Convert single-tenant Apps to Multi-

Tenant

Migrate on premise products to SaaS

model

Cello framework is delivered as a set of

libraries and APIs that can be easily integrated

to your product

Applications built using Cello can be easily

deployed in Azure

Cello contains building blocks for developing,

monetizing and servicing ISV’s customers.

Page 8: Leveraging azure and cello for delivering highly scalable multi tenant

Cello – Technology Stack

Technology Stack

SaaS Life Cycle Management Solution

Production Environment

Windows Server 2012

IIS 8.0

SQL Azure

AppFabric/Azure Cache

.NET (v4.5)

• C#, ASP.NET,

• MVC, WIF

Middle Layer

• EF 6.0

• WCF

• AppFabric Cache/Azure Cache

Database

• SQL Azure

Development Environment

Windows 7/8

Visual Studio 2012

Page 9: Leveraging azure and cello for delivering highly scalable multi tenant

Advantages of Cello and Azure Combination

Azure and Cello combination gives a perfect platform for ISVs to build

their product.

Cello brings in a wide range of engineering building blocks, operational

modules and subscription management tools. In other words, Cello offers

the complete SaaS Life Cycle Management Solution.

ISVs will have the option of exposing some of the Cello administration

features to tenants in the form self-servicing portal. This can bring down

significant amount of support team load.

Azure on the other hand provides infrastructure and application life cycle

management in the form of deployment support, monitoring tools,

online services, etc.

While Cello strengthens the product with a scalable and robust

architecture, Azure provides a scalable and secure infrastructure.

SaaS Life Cycle Management Solution

Page 10: Leveraging azure and cello for delivering highly scalable multi tenant

Typical Deployment in Azure

Web Roles

Worker Roles

Auto Scale

Traffic Manager

Cache

Active Directory

Table/BLOB

SQL Azure

SQL Azure

SQL Azure

Web Role

Product

Web Pages

Binaries

Cello

Web Pages

Binaries

Worker Role

Product

Services Binaries

Cello

Services Binaries

SQL Azure

Product

Tables

Cello

Tables

Product Data

Other Services

Auto Scale

Azure Services

Cello Data

SaaS Life Cycle Management Solution

Page 11: Leveraging azure and cello for delivering highly scalable multi tenant

Typical Deployment in Azure

ISVs can choose to deploy their product in either web role/worker role

model or they can also choose the VM model (which is vanilla IaaS).

Cello is delivered in the form of APIs and libraries, which has to be

deployed along with the product. Web role will contain the Cello web

pages and binaries. Cello services will have to be deployed in Worker

role.

Cello data is maintained separately and will have to be setup in SQL

Azure database. However, the product database can point to any storage

technology offered by Azure.

Product can leverage all the services offered by Azure platform. Cello

does not bring in any limitations for the product.

SaaS Life Cycle Management Solution

Page 12: Leveraging azure and cello for delivering highly scalable multi tenant

Cello Offers Unlimited Scalability

Web Server

Database Server

Application Database

Cello Database

Single Shard

Load Balanced Web Servers

Database Server

Application Database

Cello Database

Double Shard

Database Server

Application Database

Common for all tenants

Tenant 1 to X

Tenant (X+1) to Y

SaaS Life Cycle Management Solution

Page 13: Leveraging azure and cello for delivering highly scalable multi tenant

Cello Offers Unlimited Scalability

Cello architecture is designed for unlimited scalability at all layers.

Products built using Cello design norms by default inherit the capability

to dynamically scale out without any coding efforts.

ISVs can initially start with a single sharded model. However, when the

load increases they can easily add additional resources in the form of

machines, databases, storage etc.

Azure Watch can be effectively utilized to monitor the load of the systems

and once the threshold is reached it will automatically add additional

machines.

Cello leverages Azure Data Sharding feature by abstracting the database

from Developers. This allows ISVs to shard by tenants and/or modules.

SaaS Life Cycle Management Solution

Page 14: Leveraging azure and cello for delivering highly scalable multi tenant

Tenant and Module Based Sharding

Tenant 1 to x

Load Balanced App Servers

Tenant x+1 to y Tenant y+1 to z Dedicated DB

User Load

Tenant 1 to x Tenant x+1 to y Tenant y+1 to z Dedicated DB

Module B

Module A

SaaS Life Cycle Management Solution

Page 15: Leveraging azure and cello for delivering highly scalable multi tenant

Benefits for ISVs

“The Techcello approach is likely to be ideal for companies -especially independent software vendors - that need to get to market relatively quickly with a multitenant SaaS solution and would like a substantial shortcut while avoiding lock-in to a proprietary application platform as a service (aPaaS)”

- Gartner Research

SaaS Life Cycle Management Solution

Page 16: Leveraging azure and cello for delivering highly scalable multi tenant

Contact Us

SaaS Life Cycle Management Solution

Web : http://www.techcello.com

General Enquiry : [email protected]

Support Enquiry : [email protected]

Sales Queries: [email protected]

Register here for a Self-Guided Live Tour of Cello

http://resources.techcello.com/techcello-demo-live-access