2. RAFAEL NUNES
-Sócio da YaW Tecnologia
-Desenvolvimento em Python e Java principalmente
-Consultoria para o Mercado Financeiro(Q10 Informática)
-Instrutor da Globalcode
-Editor da InfoQ Brasil(www.infoq.com/br)
3. O QUE NÃO VEREMOS
- Desenvolvimento Web
- O que é Cloud Computing
- Todos os serviços da Amazon
- Qual a resposta para a vida, o universo e todas as coisas….
(R:42)
4. O QUE VEREMOS
Como utilizar a estrutura do AWS para escalar uma aplicação Web.
Onde utilizar cada um dos serviços e onde cada um se encaixa.
6. APLICAÇÃO WEB
Requisitos comuns de uma aplicação web escalável:
- Procesamento variável
- Armazenamento
- Banco de Dados distribuido
- Messageria
- Balanceamento de carga
- Cluster
- Monitoração
- Cache
- Picos de requisições
8. PROCESSAMENTO
Elastic Cloud Computing
- Uma das partes centrais do AWS
- Instâncias de acordo com sua necessidade
- Standard(Small 1.7Gb 1 ECU, Large 7.5Gb 4ECU, Extra Large 15Gb 8
ECU )
- Micro(613Mb memória, 2 EC2 Compute Units)
- High Memory(Extra Large 17Gb, Double 34Gb , Quadruple 68Gb)
- High CPU(Medium, Extra Large)
- Cluster Compute(23Gb memmória, 33.5 EC2 Compute Units)
- Cluster GPU(22Gb memória, 33.5 EC2 Compute Units, 2 Nvidia Tesla
‘Fermi’)
- Sistema Operacional via AMI(Amazon Machine Image)
* EC2 Compute Unit = 1.0 - 1.2 GHz 2007 Opteron ou processador Xeon
2007
11. ARMAZENAMENTO
Elastic Block Store(EBS)
- Um ‘HD’ para sua instância
- Pode ser formatado e montado como uma unidade de sua instância
- Snapshot para backups
- Expansível até 1Tb
- Instalações locais(Apache, Banco de Dados, Varnish, Git, SVN, etc)
12. BANCO DE DADOS
Relational Database Service(RDS)
- MySQL e Oracle
- Escalabilidade de armazenamento
- Backup via Snapshot
- Replicacão(entre regiões inclusive) e Master/Slave
13. MAIS ARMAZENAMENTO
Simple Storage Service(S3)
- Acesso via Webservice SOAP/REST
- Utilizado pela própria infraestrutura da amazon
- 449 bilhões de objetos
- Hospedagem de conteúdo estático: imagens, vídeos, .js, .css, backups,
snapshots, versões de deploy
14. E MAIS ARMAZENAMENTO
SimpleDB
- Banco de dados não relacional
- Armazenamento chave-valor
- Não recomendado para cache distribuído
15. E MAIS ARMAZENAMENTO
DynamoDB
- Banco de dados não relacional
- Acesso através de API
- Replicação de dados em múltiplas zonas
- Armazenamento em disco SSD
16. CACHE
- Localmente com Memcached e EBS
- Configuração e gerenciamento manual
- Replicação manual
- Serviço ElasticCache
- Implementação do protocolo Memcached
- Replicação e gerenciamento automático
17. CONTENT DELIVERY NETWORK
CloudFront
- CDN para objetos armazenados no S3
- Servidores em 20 localidades entre Europa, Ásia, EUA
- E finalmente primeira localidade na América do Sul: BRASIL!!
18. MUITOS OUTROS SERVIÇOS
- Messageria com Simple Queue Service
- Envio de e-mails com Simple E-mail Service
- Notificações e monitoramente com Simple Notification Service
- Mechanical Turk
24. GERENCIAMENTO DOS SERVICOS
- Autoscaling: Gerenciamento das instâncias, de forma programática
com diretrizes definidas para up e down
- CloudWatch e Web Console: Monitoração dos serviços e instâncias,
métricas utilizadas para Autoscaling