SlideShare une entreprise Scribd logo
1  sur  98
Télécharger pour lire hors ligne
Aplicações Multitenant
Estratégias arquiteturais para execução de aplicações na
nuvem
Aplicações multi o quê?
Aplicações Multitenant
Uma única aplicação serve múltiplos
clientes/organizações (tenants)
Sua aplicação nas nuvens
Estratégias de Migração p/ Cloud
Aplicação e Banco de dados para todos os
tenants
Aplicação e Banco de dados por cliente
Aplicação e esquema separado por cliente
Aplicação e Banco de dados para todos
com migração de clientes com maior
demanda
Questionamentos
Qual o custo de adição de um novo
cliente?
Qual o custo de manter a aplicação
atualizada?
Qual a estratégia de alocação de
máquinas?
Questionamentos
Qual o custo de licenças?
Qual o custo de gerenciamento do
software?
Premissas
Todas as estratégias requerem
automatização
Tendo isso em mente...
Aplicação e Banco de dados compartilhados
Aplicação
DB
Aplicação e Banco de dados compartilhados
Aplicação
Cliente 1
DB
Aplicação e Banco de dados compartilhados
Aplicação
Cliente 1
Cliente 2
DB
Aplicação e Banco de dados compartilhados
Aplicação
Cliente 1
Cliente 2
Cliente 3
DB
Aplicação e Banco de dados compartilhados
Aplicação
Cliente 1
Cliente 2
Cliente 3
Cliente 4 DB
Aplicação e Banco de dados compartilhados
Aplicação
Cliente 1
Cliente 2
Cliente 3
Cliente 4
.
.
.
Cliente N
DB
Aplicação e Banco de dados para todos
Aplicação e Banco de dados para todos
Atualização dos clientes
Aplicação e Banco de dados para todos
Atualização dos clientes
Aproveitamento de recursos por máquina
Aplicação e Banco de dados para todos
Atualização dos clientes
Aproveitamento de recursos por máquina
Escalabilidade através de replicação e
balanceamento de carga
Aplicação e Banco de dados para todos
Aplicação e Banco de dados para todos
Relação clientes por servidor
Aplicação e Banco de dados para todos
Relação clientes por servidor
Menor custo de licenciamento
Aplicação e Banco de dados para todos
Relação clientes por servidor
Menor custo de licenciamento
Adição de novos clientes
Aplicação e Banco de dados para todos
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Maior custo de desenvolvimento
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Maior custo de desenvolvimento
Desempenho de um cliente impacta os
outros
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Maior custo de desenvolvimento
Desempenho de um cliente impacta os
outros
Difícil medir quem está consumindo
mais recursos
Aplicação e Banco de dados por cliente
Cliente Aplicação DB
Servidor
Aplicação e Banco de dados por cliente
Cliente Aplicação DB
Servidor
ClienteAplicaçãoDB
Servidor
Aplicação e Banco de dados por cliente
Cliente Aplicação DB
Servidor
Cliente Aplicação DB
Servidor
ClienteAplicaçãoDB
Servidor
Aplicação e Banco de dados por cliente
Cliente Aplicação DB
Servidor
Cliente Aplicação DB
Servidor
ClienteAplicaçãoDB
Servidor
ClienteAplicaçãoDB
Servidor
Aplicação e Banco de dados por cliente
Cliente Aplicação DB
Servidor
Cliente Aplicação DB
Servidor
Cliente Aplicação DB
Servidor
ClienteAplicaçãoDB
Servidor
ClienteAplicaçãoDB
Servidor
Aplicação e Banco de dados por cliente
Cliente Aplicação DB
Servidor
Cliente Aplicação DB
Servidor
Cliente Aplicação DB
Servidor
ClienteAplicaçãoDB
Servidor
ClienteAplicaçãoDB
Servidor
ClienteAplicaçãoDB
Servidor
Aplicação e Banco de dados por cliente
Aplicação e Banco de dados por cliente
Separação dos dados by design
Aplicação e Banco de dados por cliente
Separação dos dados by design
Medição do consumo de recursos
Aplicação e Banco de dados por cliente
Separação dos dados by design
Medição do consumo de recursos
Desempenho independente de cliente
Aplicação e Banco de dados por cliente
Separação dos dados by design
Medição do consumo de recursos
Desempenho independente de cliente
Poder usar separação física como argumento
de venda
Aplicação e Banco de dados por cliente
Aplicação e Banco de dados por cliente
Gerenciamento dos clientes
Aplicação e Banco de dados por cliente
Gerenciamento dos clientes
Adição de novos clientes
Aplicação e Banco de dados por cliente
Gerenciamento dos clientes
Adição de novos clientes
Requer mais automatização da
infraestrutura
Aplicação e Banco de dados por cliente
Gerenciamento dos clientes
Adição de novos clientes
Requer mais automatização da
infraestrutura
Ociosidade
Aplicação e Esquema de Banco de dados por
cliente
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
Cliente Aplicação E
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
Cliente Aplicação E
Cliente Aplicação E
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
Cliente Aplicação E
Cliente Aplicação E
Cliente Aplicação E
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
ClienteAplicaçãoE
Cliente Aplicação E
Cliente Aplicação E
Cliente Aplicação E
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
ClienteAplicaçãoE
ClienteAplicaçãoE
Cliente Aplicação E
Cliente Aplicação E
Cliente Aplicação E
DB
Servidor BD
Aplicação e Esquema de Banco de dados por
cliente
Servidor de Aplicação
ClienteAplicaçãoE
ClienteAplicaçãoE
ClienteAplicaçãoECliente Aplicação E
Cliente Aplicação E
Cliente Aplicação E
Aplicação e Esquema de Banco de dados por
cliente
Separação dos dados via esquema de banco
Aplicação e Esquema de Banco de dados por
cliente
Separação dos dados via esquema de banco
Aplicação e Esquema de Banco de dados por
cliente
Melhor aproveitamento de recursos
Separação dos dados via esquema de banco
Aplicação e Esquema de Banco de dados por
cliente
Melhor aproveitamento de recursos
Pouca alteração de código
Separação dos dados via esquema de banco
Aplicação e Esquema de Banco de dados por
cliente
Melhor aproveitamento de recursos
Pouca alteração de código
Custo de licenças
Aplicação e Esquema de Banco de dados por
cliente
Aplicação e Esquema de Banco de dados por
cliente
Facilidade de migração entre instâncias
Aplicação e Esquema de Banco de dados por
cliente
Facilidade de migração entre instâncias
Fácil escalabilidade
Aplicação e Esquema de Banco de dados por
cliente
Facilidade de migração entre instâncias
Fácil escalabilidade
Separação por contexto
Aplicação e Esquema de Banco de dados por
cliente
Aplicação e Esquema de Banco de dados por
cliente
Desempenho compartilhado
Aplicação e Esquema de Banco de dados por
cliente
Desempenho compartilhado
Gerenciamento dos clientes
Aplicação e Esquema de Banco de dados por
cliente
Desempenho compartilhado
Gerenciamento dos clientes
Falhas no banco afeta todos os clientes
alocados naquela instância
Aplicação e Esquema de Banco de dados por
cliente
Desempenho compartilhado
Gerenciamento dos clientes
Falhas no banco afeta todos os clientes
alocados naquela instância
Requer maior automatização da
infraestrutura
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4 DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4
DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4
DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4
DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4
DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4
DB
App
DB
Aplicação e Banco de dados compartilhados
C3
CN
.
.
.
App
C1
C2
C4
DB
App
DB
Aplicação e Banco de dados para todos
Aplicação e Banco de dados para todos
Atualização dos clientes
Aplicação e Banco de dados para todos
Atualização dos clientes
Aproveitamento de recursos por máquina
Aplicação e Banco de dados para todos
Atualização dos clientes
Aproveitamento de recursos por máquina
Escalabilidade através de replicação e
balanceamento de carga
Aplicação e Banco de dados para todos
Aplicação e Banco de dados para todos
Relação clientes por servidor
Aplicação e Banco de dados para todos
Relação clientes por servidor
Menor custo de licenciamento
Aplicação e Banco de dados para todos
Relação clientes por servidor
Menor custo de licenciamento
Adição de novos clientes
Aplicação e Banco de dados para todos
Relação clientes por servidor
Menor custo de licenciamento
Adição de novos clientes
Clientes “comportados” permanecem
juntos
Aplicação e Banco de dados para todos
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Maior custo de desenvolvimento
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Maior custo de desenvolvimento
Desempenho de um cliente impacta os
outros
Aplicação e Banco de dados para todos
Separação de dados feito pela aplicação
Maior custo de desenvolvimento
Desempenho de um cliente impacta os
outros
Difícil medir quem está consumindo
mais recursos
Dúvidas?
Referências
http://blog.caelum.com.br/um-produto-
para-muitos-clientes-implementando-
multitenancy/
http://www.tectura.com.br/topics/
abordagens_de_multitenant?page=1
http://en.wikipedia.org/wiki/Multitenancy

Contenu connexe

En vedette

1393 Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...
1393   Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...1393   Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...
1393 Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...Marianne Zipf
 
Gárgolas y quimeras
Gárgolas y quimerasGárgolas y quimeras
Gárgolas y quimerasernestobelda
 
Master-Cornell University-Ithaca, New York
Master-Cornell University-Ithaca, New YorkMaster-Cornell University-Ithaca, New York
Master-Cornell University-Ithaca, New YorkJ. Salvador Tellez
 
Otoño en Quirós (Asturias)
Otoño en Quirós (Asturias)Otoño en Quirós (Asturias)
Otoño en Quirós (Asturias)F. Ovies
 
Celebrating Your Child's Gifts and Encouraging Growth
Celebrating Your Child's Gifts and Encouraging GrowthCelebrating Your Child's Gifts and Encouraging Growth
Celebrating Your Child's Gifts and Encouraging GrowthThe Bear Creek School
 

En vedette (6)

1393 Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...
1393   Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...1393   Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...
1393 Mangelndes Gottvertrauen .... Glaubensschwäche .... Vertrauen zu Gott ...
 
Chapter 11 blood
Chapter 11 bloodChapter 11 blood
Chapter 11 blood
 
Gárgolas y quimeras
Gárgolas y quimerasGárgolas y quimeras
Gárgolas y quimeras
 
Master-Cornell University-Ithaca, New York
Master-Cornell University-Ithaca, New YorkMaster-Cornell University-Ithaca, New York
Master-Cornell University-Ithaca, New York
 
Otoño en Quirós (Asturias)
Otoño en Quirós (Asturias)Otoño en Quirós (Asturias)
Otoño en Quirós (Asturias)
 
Celebrating Your Child's Gifts and Encouraging Growth
Celebrating Your Child's Gifts and Encouraging GrowthCelebrating Your Child's Gifts and Encouraging Growth
Celebrating Your Child's Gifts and Encouraging Growth
 

Similaire à Aplicações Multitenant

Rio Info 2009 Reducao de Custos - Danilo Bordini
Rio Info 2009 Reducao de Custos - Danilo BordiniRio Info 2009 Reducao de Custos - Danilo Bordini
Rio Info 2009 Reducao de Custos - Danilo BordiniRio Info
 
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWSAWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWSAmazon Web Services LATAM
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidorMarcia Abrahim
 
Riverbed SteelHead WAN Optimization (Otmização de WAN)
Riverbed SteelHead WAN Optimization (Otmização de WAN)Riverbed SteelHead WAN Optimization (Otmização de WAN)
Riverbed SteelHead WAN Optimization (Otmização de WAN)Bravo Tecnologia
 
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Amazon Web Services LATAM
 
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...Amazon Web Services LATAM
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambMicrosoft Brasil
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Marcus Garcia
 
Trabalhando com ALM na nuvem
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvemAdriano Bertucci
 
Configr - Your Cloud. Your Rules.
Configr - Your Cloud. Your Rules.Configr - Your Cloud. Your Rules.
Configr - Your Cloud. Your Rules.Configr
 
AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...
AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...
AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...Amazon Web Services LATAM
 
[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataforma[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataformaAlessandro Almeida
 
Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)
Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)
Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)Aryel Tupinambá
 
Presentation yros | aws solution provider
Presentation yros | aws solution providerPresentation yros | aws solution provider
Presentation yros | aws solution providerYros
 
SAP na Nuvem da AWS - Benefícios de Negócio
SAP na Nuvem da AWS - Benefícios de NegócioSAP na Nuvem da AWS - Benefícios de Negócio
SAP na Nuvem da AWS - Benefícios de NegócioAmazon Web Services LATAM
 
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços MóveisQConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços MóveisEiti Kimura
 
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços MóveisQConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços MóveisDataStax Academy
 

Similaire à Aplicações Multitenant (20)

Rio Info 2009 Reducao de Custos - Danilo Bordini
Rio Info 2009 Reducao de Custos - Danilo BordiniRio Info 2009 Reducao de Custos - Danilo Bordini
Rio Info 2009 Reducao de Custos - Danilo Bordini
 
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWSAWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidor
 
Microsoft Workloads em Amazon Web Services
Microsoft Workloads em Amazon Web ServicesMicrosoft Workloads em Amazon Web Services
Microsoft Workloads em Amazon Web Services
 
Riverbed SteelHead WAN Optimization (Otmização de WAN)
Riverbed SteelHead WAN Optimization (Otmização de WAN)Riverbed SteelHead WAN Optimization (Otmização de WAN)
Riverbed SteelHead WAN Optimization (Otmização de WAN)
 
VMware Portfolio 2015
VMware Portfolio 2015VMware Portfolio 2015
VMware Portfolio 2015
 
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
 
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcamb
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
 
Trabalhando com ALM na nuvem
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvem
 
Configr - Your Cloud. Your Rules.
Configr - Your Cloud. Your Rules.Configr - Your Cloud. Your Rules.
Configr - Your Cloud. Your Rules.
 
AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...
AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...
AWS Innovate 2020 - Entenda como o Data Flywheel pode apoiá-lo em sua estraté...
 
[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataforma[ServiceNow] Visão geral da plataforma
[ServiceNow] Visão geral da plataforma
 
Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)
Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)
Laraconf 2016: Construindo e mantendo aplicações multi-tenant (multi-cliente)
 
Presentation yros | aws solution provider
Presentation yros | aws solution providerPresentation yros | aws solution provider
Presentation yros | aws solution provider
 
SAP na Nuvem da AWS - Benefícios de Negócio
SAP na Nuvem da AWS - Benefícios de NegócioSAP na Nuvem da AWS - Benefícios de Negócio
SAP na Nuvem da AWS - Benefícios de Negócio
 
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços MóveisQConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
 
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços MóveisQConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
 
Abaas - Advanced Beer-as-a-Service
Abaas - Advanced Beer-as-a-ServiceAbaas - Advanced Beer-as-a-Service
Abaas - Advanced Beer-as-a-Service
 

Aplicações Multitenant