Wanderlei Souza
hífen deixará de ser empregado…
Quando o prefixo da palavra terminar em vogal e o segundo elemento começar com as consoantes s ou r. Nesse caso, a consoante será duplicada.
Microsserviços
Wanderlei Souza
Beleza na Web
• 1M clientes• 2.5K pedidos por dia• 2.3M facebook likes• 200 funcionários (30 TI)
Wanderlei Souza
• O que são microsserviços?• Quais são as vantagens?• E as desvantagens…• Melhores práticas
Agenda
Wanderlei Souza
“Pequenos serviços autônomos que trabalham bem em conjunto”
• Processos independentes • Comunicação por meio de APIs• Pequenos e especializados
Microsserviços
Sam Newman, ThoughtWorks
Wanderlei Souza
Vantagens
MONOLITO VS
/v2
Wanderlei Souza
Horizontal Duplication
Func
tiona
l Dec
ompo
sition
Data Partitioning
The Scale Cube
Wanderlei Souza
Sistema Poliglota
Java
Node.JS
Groovy Python
Wanderlei Souza
• Alinhar arquitetura com a empresa• Entregar funcionalidade rapidamente• Escalar de forma independente• Permissionamento restrito• Testar novas tecnologias facilmente
Vantagens
Wanderlei Souza
• Qual caminho devo tomar: Muitas opções =)• Longo é o caminho
Desvantagens
3 meses 6 meses 11 meses
Wanderlei Souza
Wanderlei Souza
• Testes em sistemas distribuídos• Encontrar o problema pode ser difícil• Monitoração de centenas de máquinas• Resiliência e performance não vem de graça• Cachear é fácil, agora tirar do cache… • Consistência de dados
Desvantagens (será?)
Wanderlei Souza
Práticas: Microsserviços e Times
Frontend
Serviços
Banco de dados
Catálogo
Busca
Estoque
Wanderlei Souza
Práticas: Microsserviços e Times
Wanderlei Souza
Práticas: Automação não é opcional
• Continuous Delivery (+Automated Testing)• Provisionamento por APIs• Imagens replicáveis (eg: AMIs)• Infrastructure as Code
Wanderlei Souza
Práticas: Consumer-Driven Contracts
CatálogoBusca Catálogo
Escreva Expectativascomo testes automáticos
/v1
/v2
Wanderlei Souza
Práticas: Não use DBMS como integradores
Wanderlei Souza
Wanderlei Souza
Práticas: Orquestração e Coreografia
ESBEvento
Wanderlei Souza
Práticas: (Des)centralizar?
• Repositório de código• Servidor de Configuração• Arquivos de Log• Monitoração• Um microsserviço por Servidor/SO/Máquina
Wanderlei Souza
Práticas: Padronize
• Padrões de automação• Comportamento das APIs
• API Style Guide• Swagger• Postman
Wanderlei Souza
Práticas: API-Gateway
Wanderlei Souza
Práticas: API-Gateway
• API Portal• Gerenciamento de chaves e permissões• Controle de cache• Contagem de acessos (falhas, sucessos etc)• API-Gateway -> Microservices
• Service Discovery
Wanderlei Souza
Práticas: Tolerância a Falhas
API-GATEWAY
slow service
exhaustedpool
timeouts
Wanderlei Souza
Práticas: Observabilidade básica
Request
Response
status code & timer, errors
Hardware metrics
BIST / Health check
+ Correlation ID
Top Related