Django no AWS

1.373 visualizações

Publicada em

Arquitetura Django para o Amazon AWS - PythonBrasil 2011

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.373
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
10
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Django no AWS

  1. 1. 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)
  2. 2. O QUE NÃO VEREMOS- O que é Django- O que é Cloud Computing- Todos os serviços da Amazon- Qual a resposta para a vida, o universo e todas as coisas…. (R:42)
  3. 3. O QUE VEREMOSComo utilizar a estrutura do AWS para escalar uma aplicação Django.Onde utilizar cada um dos serviços e onde cada um se encaixa.
  4. 4. ANTES DE COMEÇAREu preciso escalar?
  5. 5. APLICAÇÃO WEBRequisitos 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
  6. 6. AMAZON AWS
  7. 7. PROCESSAMENTOElastic 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
  8. 8. INSTANCE REGIONSCloud Computing não são duendes em numa nuvem cuidando dos meus servidores.
  9. 9. ELASTIC LOAD BALANCE ELB US Virginia Tokio 0 Instância Instância
  10. 10. ARMAZENAMENTOElastic 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)
  11. 11. BANCO DE DADOSRelational Database Service(RDS)- MySQL e Oracle- Escalabilidade de armazenamento- Backup via Snapshot- Replicacão(entre regiões inclusive) e Master/Slave
  12. 12. MAIS ARMAZENAMENTOSimple 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
  13. 13. E MAIS ARMAZENAMENTOSimpleDB- Banco de dados não relacional- Armazenamento chave-valor- Não recomendado para cache distribuído
  14. 14. 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
  15. 15. CONTENT DELIVERY NETWORKCloudFront- CDN para objetos armazenados no S3- Servidores em 20 localidades entre Europa, Ásia, EUA- E finalmente primeira localidade na América do Sul: BRASIL!!
  16. 16. 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
  17. 17. APP WEB PADRÃO
  18. 18. E COMO ESCALAR?- Picos de demanda- Localidade- Demanda esperada- Horário de funcionamento
  19. 19. ISSO ESCALA?Claro, é só plugar mais máquinas…..
  20. 20. E COMO ESCALA ISSO?
  21. 21. ESCALANDO NA AMAZON
  22. 22. 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 Autscaling

×