Descobrindo o poder
do ‘Cloud Computing’
Faça parte também...
# meetup.com/pt-BR/Random-Hacks
André Paulovich
Arquiteto de Sistemas - CI&T
paulovich@100loop.com | @andrepaulovich
MCP | MCTS | MCT | MCAD | MCSD.Net | MVP Asp.Net 2011-2014
Quem?
Somos globais, presentes no Brasil, EUA,
Europa, Japão e China.
Excelência reconhecida pelo mercado com
diversos prêmios e certificados desde a nossa
fundação em 1995.
Somos multiculturais, com uma legião de mais
de 2000 talentos e suas incríveis histórias
Forte presença em regiões estratégicas
Estados Unidos
• Atlanta
• Filadélfia
• São Francisco
• Somerset NJ
• Nova Iorque
Brasil
• Campinas (sede)
• Belo Horizonte
• Rio de Janeiro
• São Paulo
UK
• Londres
China
• Ningbo
• Shangai
Japão
• Tokyo
3
Reconhecimento
CI&T foi listado nos últimos seis anos consecutivos como
um dos melhores prestadores de serviços de
outsourcing do mundo pela IAOP.
Top Parceiro do ano em
Cloud 2013 e 2014
CI&T é símbolo de inovação em outsourcing
Fortune Magazine
9 anos no ranking
Descobrindo o poder
do ‘Cloud Computing’
Computação?
“A computação pode ser definida como a busca de uma
solução para um problema a partir de entradas (inputs) e
tem seus resultados (outputs) depois de trabalhada
através de um algoritmo. ” Wikipedia
E negócio precisa de computação
Como é hoje
Como é hoje?
Tempo
Carga
Alocação de
capacidades
Desperdício de
capacidades
Falta de
capacidades
Previsão de
carga
Padrão de Crescimento de Capacidade de TICapacidadedeTI
Uso
Computação
Tempo
Uso
Inatividade
• Desperdício da capacidade provisionada
• “Time to market” pode ser retardado
Padrões de Uso: Liga/Desliga
Uso
• Serviços que precisam crescer e escalar
• Crescer é um desafio grande na TI
• Deployment complexo
Padrões de Uso: Crescimento RápidoComputação
Tempo
Uso
• Pico de demanda inesperada
• Desempenho comprometido pelo pico
• Difícil provisionar nos casos extremos
Padrões de Uso: “Pico Imprevisível“
“Earth Shake”
Computação
Tempo
Padrões de Uso: “Picos Previsíveis”
Sistemas estudantis
Bancos
Computação
Tempo
Uso
Mesmo “prevendo” você ainda tem um problema!
Vende ISSO!
Em 2005, a Amazon já tinha investido mais de uma década e centenas
de milhões de dólares para desenvolver e gerenciar uma infraestrutura de
TI em grande escala, confiável e eficiente, que alimentou a operação de uma das
maiores plataformas de varejo on-line do mundo.
Manutenível Disponível Escalável
Econômico
Manutenível Disponível Escalável
Econômico
Manutenível Disponível Escalável
Econômico
“Everything fails all the time.”
Werner Vogels
CTO da Amazon
Recuperação em desastres
Como isso é medido?
Como isso é medido?
Mais facilmente compreendido pela tabela dos noves:
Manutenível Disponível Escalável
Econômico
Tempo
CapacidadedeTI
Carga
Alocação de
capacidades
Desperdício de
capacidades
Falta de
capacidades
Previsão de
carga
Padrão de Crescimento de Capacidade de TI
Carga
Redução do
investimento inicial
Redução do
excesso de TI
Sem falta de
capacidades
Redução das
capacidades
nos momentos
de redução da
carga
Tempo
Previsão
de carga
Padrão “Pay as you go” ou EscalávelCapacidadedeTI
Manutenível Disponível Escalável
Econômico
Compare!
https://awstcocalculator.com
Se “popularizou” em 2008
Entenda o
contexto
Big Users
Fonte: ProgrammableWeb
Clube dos Bilhões
5+ Bilhões de Calls/Dia1+ Bilhões de Calls/Dia
A Internet
das coisas
E a exigência dos
usuários é cada vez
MAIOR!!!
Evolução
Virtualização
Físico SaaSVirtual IaaS PaaS
Nuvem
Seu Datacenter
Virtualization
O/S
Hardware
Network
Data
Applications
Firewall
Web
Sites
Applications
Data
Serviços na
Nuvem
Applications
Firewall Rules
Data
Virtual Network
Máquinas
Virtuais
Virtual Network
Data
Applications
Firewall Rules
O/S
Quanto mais à direita, maior o foco no “negócio”
Cloud Services
Cloud Native ou PAAS!
Flexibilidade
Agilidade
Cloud Native ou PAAS!
Flexibilidade
Agilidade
Eu QUERO Agora!
Posso pegar minha aplicação atual e publicá-la na nuvem para ter todas
estas vantagens?
90% das
aplicações
são assim.
Ele continua
sendo um
Porco!
“On the line”
Clickgram
Você é o responsável pela
infraestrutura de um novo aplicativo
chamado Clickgram.
O Clickgram permite que qualquer
pessoa compartilhe uma foto com seus
amigos em apenas um clique!
Chegou o momento de você colocar o
aplicativo no ar e seu chefe exigiu que
não ocorram problemas de
escalabilidade ou de disponibilidade.
Requisição Resposta
JAVA
MySQLREDIS HD
Requisição Resposta
Servidor 01
JAVA
MySQLREDIS HD
Mas lembre-se de
que precisa ser
escalável!
Servidor 01
JAVA
MySQLREDIS HD
Servidor 02
JAVA
MySQLREDIS HD
Requisição Resposta Requisição Resposta
MySQLREDIS HD
Parece bom, mas as camadas de dados não são
escaláveis simplesmente “dobrando” os servidores.
E agora?!
Requisição Resposta
Servidor 01
JAVA
MySQLREDIS HD
Novamente parece muito bom!
Esta abordagem de montar um servidor mais potente
vai funcionar por um tempo, mas tem um limite físico.
Voltamos à estaca
zero!
Dica de ouro!
ServidorServidor
ServidorServidor
JAVA
MySQL
REDIS
HD
Isole cada componente da sua aplicação!
Problema: O banco de dados está muito lento.
O que fazer?
Servidor (master)Servidor
ServidorServidor
JAVA
MySQL
REDIS
HD
Um master-slave pode funcionar!
Servidor (slave)
MySQL
Os bancos relacionais,
são “limitados”!
(DBA´s por favor sem polêmica)
ServidorServidor
ServidorServidor
JAVA
NoSQL
REDIS
HD
Mas considere usar bancos NO-SQL
Problema: A quantidade de escritas e leituras no sistema de
arquivos (armazenamento de fotos) precisa aumentar.
O que fazer?
ServidorServidor
ServidorServidor
JAVA
NoSQL
REDIS
Storage
Não use um sistema de arquivos convencional.
Problema: O sistema de cache precisa de mais memória.
O que fazer?
ServidorServidor
ServidorServidor
JAVA
NoSQL
REDIS + Memória
Storage
Neste caso, aumentar a memória de um servidor
basta!
Problema: A aplicação não está atendendo todas as requisições
por conta de limitação do processamento.
O que fazer?
Servidor
Servidor
ServidorServidor
JAVA
NoSQL
REDIS + Memória
Storage
Dobramos a aplicação e adicionamos um
balanceador de carga! Voilá!
Servidor
JAVA
Servidor
Load
BalancerRequisição
Resposta
Servidor
Servidor
ServidorServidor
GAE
DataStore
GAE - MEMCACHE
Cloud
Storage
Servidor
GAE
Servidor
Cloud
NetworkingRequisição
Resposta
Visão usando “recursos de nuvem” do google.
Servidor
ServidorServidor
GAE
DataStore
GAE - MEMCACHE
Servidor
GAE
Servidor
Cloud
NetworkingRequisição
Resposta
Indo ainda além… pense fora da caixa.
Por hoje é só pessoal!
Obrigado, velhinhos!
Perguntas?!
André Paulovich
paulovich@100loop.com | @andrepaulovich
www.100loop.comwww.raptors.com.br
MCP | MCTS | MCT | MCAD | MCSD.Net | MVP Asp.Net

Acerto talk - Descobrindo o poder do Cloud Computing