Open Source Cloud Computing - Leonardo Vaz - Tchelinux Bento Gonçalves 2017
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
-
Upload
tchelinux -
Category
Technology
-
view
35 -
download
6
Transcript of Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
Cristiano Diedrich
● Graduado em Sistema de Informação
● Atualmente Container Specialist na Umbler
● Busco soluções simples e eficientes utilizando Docker
● Pronto para scalling
● Banco de dados separado
● Com comunicação remota, muitas vezes efetuadas através de HTTP
ou protocolos de mensageria
● Cada micro-serviço geralmente implementa uma pequena função de
negócio que compõe aplicações maiores
● Permite o desacoplamento tecnológico com o desenvolvimento
usando múltiplas linguagens e frameworks harmonicamente na
arquitetura
● Estilo de Arquitetura que usa componentes pequenos e com baixo
acoplamento
● Arquiteturas tolerantes a falhas em múltiplos componentes
● 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
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
• Sistema de arquivos distribuído e compartilhado: S3, Azure Blob,
OpenStack Swift, GlusterFS, etc
Controle do Estado em instâncias individuais
❖ Caches locais
• Sistemas de cache distribuídos: memcached, redis, Infinispan,
Elastic Search, etc
Componentes que permitam aumentar linearmente a escrita
❖ Usar outros tipos de bancos de dados em conjunto com o relacional
• Muitos bancos NoSql suportam particionamento: CAP Theorem
❖ Topologias multi-master são raras e normalmente caras
• Implementar o máximo de processamento assíncrono, com
abordagens de retentativas e capacidade de controlar a vazão
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
Alta disponibilidade geográfica
❖ 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
Processos de deploy mais leves e seguros
❖ 12 Factor App
❖ Automação em Ops
❖ Continuous Integration/Deploy
❖ Orquestração
❖ API Gateways
❖ Service Discovery
❖ Empresas/Startups que já tenham um modelo de negócio definido
❖ Tecnologias Agnósticas
❖ Diminuir impacto ao usuário
❖ Otimizar recursos
@mundodocker
facebook.com/mundodocker
http://www.mundodocker.com.br
Contatos