O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Arquiteturas escaláveis e tolerantes a falhas

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 21 Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Quem viu também gostou (12)

Anúncio

Semelhante a Arquiteturas escaláveis e tolerantes a falhas (20)

Anúncio

Mais recentes (20)

Arquiteturas escaláveis e tolerantes a falhas

  1. 1. Arquiteturas Escaláveis e Tolerantes a Falhas Tech Talks
  2. 2. Objetivos • Construir arquiteturas escaláveis horizontalmente • Arquiteturas tolerantes a falhas em múltiplos componentes • Gestão de Mudança e deploys sem dor
  3. 3. Desafios Comuns • Controle do Estado em instâncias individuais • Componentes que permitam aumentar linearmente a escrita • Alta disponibilidade geográfica • Processos de deploy mais leves e seguros
  4. 4. Controle do Estado em instâncias individuais • Sessões Web/HTTP • Uploads e gerenciamento de arquivos locais • Caches locais
  5. 5. Como resolver?
  6. 6. Controle do Estado em instâncias individuais • Sessões Web/HTTP • Repositório de sessão compartilhado: Memcached, Redis, DynamoDB, etc • Uploads e gerenciamento de arquivos locais • Sistema de arquivos distribuído e compartilhado: S3, Azure Blob, OpenStack Swift, GlusterFS, etc • Caches locais • Sistemas de cache distribuídos: memcached, redis, Infinispan, Elastic Search, etc
  7. 7. Controle do Estado em instâncias individuais Arquiteturas de micro-serviços
  8. 8. Componentes que aumentem linearmente a escrita • Bancos de dados relacionais são os vilões comuns • Capacidade de escrita limitada pela capacidade de 1 único nó • Topologias multi-master são raras e normalmente caras
  9. 9. Como resolver?
  10. 10. Componentes que aumentem linearmente a escrita • Usar outros tipos de bancos de dados em conjunto com o relacional • Muitos bancos NoSql suportam particionamento: CAP Theorem • Implementar o máximo de processamento assíncrono, com abordagens de retentativas e capacidade de controlar a vazão
  11. 11. Alta disponibilidade geográfica • Falhas em datacenters individuais são comuns • Falhas em componentes individuais são ainda mais comuns • Cada vez mais precisaremos de arquiteturas distribuídas de alto volume
  12. 12. Como resolver?
  13. 13. Alta disponibilidade geográfica • Falhas em datacenters individuais são comuns • Topologias multi-datacenter, com nuvens públicas ou híbridas • Falhas em componentes individuais são ainda mais comuns • Privilegiar componentes de software que permitam replicação distribuída e preferencialmente sharding • Cada vez mais precisaremos de arquiteturas distribuídas de alto volume • Avaliar o uso de componentes clusterizáveis e sem limitações de armazenamento, escrita e leitura
  14. 14. Alta disponibilidade geográfica
  15. 15. Processos de deploy mais leves e seguros • Pipelines de CI/CD • Private PaaS • Arquiteturas de micro-serviços com containers
  16. 16. Como resolver?
  17. 17. Continuous Delivery/Deployment
  18. 18. Deployment Pipelines
  19. 19. Blue-Green Deployments Stacks inteiras em Produção simultaneamente Chaveamento em poucos segundos
  20. 20. Private PaaS, micro-serviços • Facilidade de promover aplicações e configurações para Produção, com migrações a quente • Tempos baixíssimos de deploy • Componentes mais granulares, mais fácil isolar impactos
  21. 21. Obrigado!

×