CAPACIDADE DA TI
Custo
Inicial
“Falta“ de
capacidades
Alocação de
capacidades
“Desperdício“
de
capacidades
Previsão
de Carga
Custo fixo das
capacidades
Carga real
TEMPO
CAPACIDADE DA TI
Alocação de
capacidades
Previsão
de Carga
Sem “falta“ de
capacidades
Redução do
“excesso de
TI“
É possível a
redução das
capacidades no
caso da redução
da carga
Redução dos
investimentos
iniciais
Carga real
Tempo
“Crescimento Rápido“
Computar
Computar
“On / Off “
Período de
Inatividade
Tempo
Time
•
•
•
Cargas On/Off
Desperdício da capacidade provisionada
Time to market pode ser retardado
•
•
•
Serviços que precisam cresce e escalar
Crescer é um desafio grande na TI
Provisionamento de hardware complexo
“Carga Imprevista“
“Carga Sazonal“
Computar
Computar
•
•
•
Uso Médio
Uso
Média
Uso Médio
Uso Médio
Tempo
Tempo
Pico de demanda inesperada
Desempenho comprometido pelo pico
Difícil provisionar nos casos extremos
•
•
•
Serviços c/ micro sazonalidades
Picos devido a demandas periódicas
Complexidade da TI + desperdício
IaaS
Modelo de
Serviços
PaaS
SaaS
Nuvem
Privado
Modelo de
Implantação
Público
Comunidade
Híbrido
Infrastructure
(OnPremises)
(as a Service)
Você administra
(as a Service)
Administrado pelo fornecedor
Administrado pelo fornecedor
Você administra
(as a Service)
Administrado pelo fornecedor
Você administra
Software
Platform
COMPONENTS: Reutilizável, auto-descrito, unidade de
teste, distribuição e serviço
FEATURES: Bloco de construção de produto que, em
combinação com outras features ou componentes,
disponibiliza um conjunto de funcionalidade
ROLES: Composição de features que forma uma unidade
de gerenciamento (implantação, atualização)
WORKLOADS: Composição de papéis relacionados que
rodam juntos num servidor ou conjunto de servidores
SOLUTION: Um conjunto de workloads integrados que
juntos endereçam um problema para um segmento de
clientes
PRODUCT: Uma solução empacotada como um produto
Software Cliente
Cliente PC
Browser
Office
Client
Cliente Mobile
Gadgets
IM
Speech
SMS/IM
Browser
Embedded
Office
Client
Devices
Consoles
Software Aplicativo
Apresentação Web
Static
Dynamic
RIA
Acesso Programático
Streaming
RSS
REST
Web Services
VoiceXML
SOAP
SMS
SMTP
Aplicação
Presentation (Web Role)
Business Logic (Worker Role)
Infraestrutura
Storage
File
Relational
Blob
Messaging
Table
Async Queue/Bus
Fundações
Identity & Access
Peer to Peer
Authentication
Authorization
Workflow
Event Based
Computação
Physical, Dedicated
On Premises
Physical, Shared
Hoster
Virtual, Single
Virtual, Scalable
Cloud
Worker Based
•
•
100 usuários simultâneos
3.000 ops/ dia
•
•
•
•
2 web roles
1 worker role
512 cache
5 GB storage
Thread
Thread
Bloqueia
Esperando…
Thread
Thread
Contexto
Projeto síncrono
Projeto assíncrono
Síncrono
Assíncrono
Dependência
Isolamento
Escalabilidade Gerenciamento Capacidade de
resposta
1.
2.
3.
4.
5.
6.
7.
Usuário sobe arquivo grande de imagem
Imagem é inserida num blob storage
Mensagem é enviada para fila com BLOB URI e metadados
Worker role lê mensagem da fila
Worker role processa mensagem, lê imagem do BLOB storage, gera thumbnail
Thumbnail e metadados são armazenados numa tabela
Mensagem é apagada da fila
Web Role
Web Role
Worker Role
Worker Role
Worker Role
Worker Role
Table
30mb JPEG
Blob Container
L
B
L
B
Queue
Storage
1.
2.
3.
4.
5.
6.
7.
8.
9.
Envio de mensagem de débido de R$100 da conta
Worker role lê a mensagem
Saldo da conta é debitado em R$100
Worker role “cai” antes da mensagem ser apagada
3 minutos depois, mensagem reaparece na fila
Worker role lê a menagem
Saldo da conta é debitado em R$100
A mensagem é apagada da fila
Caos é instaurado, cliente reclama ao banco…
Web Role
Web Role
Worker Role
Worker Role
Worker Role
Worker Role
Saldo==$900
Saldo
$1000
$800
Problema de idempotência
L
B
L
B
Queue
Storage
1. Envio de mensagem de débido de R$100 da conta com ID da transação
2. Worker role lê a mensagem e verifica se ID da transação já existe
3. Escreve ID da transação no estado ‘Iniciado’ no ‘Replay Log’
4. Saldo da conta é debitado em R$100
5. Worker role “cai” antes da mensagem ser apagada
6. 3 minutos depois, mensagem reaparece na fila
7. Worker role lê a mensagem. Verifica Id da transação existente no estado ‘Iniciado’.
8. Mensagem de compensação é escrita em outra fila
9. Mensagem é apagada da fila.
10.Mensagem de compensação é processada.
Saldo = $900
$1000
Query
Web Role
Web Role
Worker Role
Worker Role
Worker Role
Worker Role
Table
Queue
L
B
L
B
Queue
Storage
Compatível com
Projetado para
Windows Azure
Windows Azure
Disponível
como
Serviço
Whitepaper: The Windows Azure Programming Model
http://go.microsoft.com/?linkid=9751501
Queue
Web Role
Table
Worker Role
User
Company Domain
www.contoso.com
1
DNS resource record for
www.contoso.com
2
5
3
Traffic Manager domain
contoso.ctp.trafficmgr.com
DNS Name
Load Balance Method
4
monitoring
6
Traffic Manager policy
Hosted
Service 1
...
Service
Calls
Hosted
Service N
Windows Azure hosted services
named in policy
Windows Azure Traffic Manager Help
Composition
Model
Text
XML
Graphics
Binary Data
Streaming
Receive
Receive
Firewall
Send
Send
Exchange messages between loosely
coupled, composite applications.
Application #1
Direct Connection facilitated by
Service Bus if that is best
connection mechanism.
Application #2
Simplifica e automatiza
requisições de
autorização
Abstração para
autenticação baseada
em claims
Relacionamento seguro
Aplicações e dados
Aplicações ou
usuários
APPI 301 Arquitetura de Referência na Plataforma
Microsoft e Windows Azure
Get the free mobile app for your phone
http:/ / gettag.mobi
http://technet.microsoft.com/pt-br
Get the free mobile app for your phone
http:/ / gettag.mobi
http://msdn.microsoft.com/pt-br
Não esqueça de
preencher sua avaliação
online
www.teched.com.br/avaliacao
Get the free mobile app for your phone
http:/ / gettag.mobi
Download

Criando aplicações prontas para nuvem - Junior Galvão