Primeira de uma série de apresentações que realizei na Diretoria de Tecnologia do Banco do Brasil para as gerências de TI responsáveis pelos sistemas de Cartão, Investimentos e Seguridade.
2. Definição
São Componentizados Via Serviços
São Organizados Entorno de Capacidades do Negócio
Produtos e Não Projetos (You Build, You Run)
Endpoints Inteligentes e Barramentos Burros
Governança Decentralizada
Administração de Dados Decentralizada
Automação de Infraestrutura
Design para Falhas
Design Evolutivo
4. Componentização via Serviços
• COMPONENTES = UNIDADES DE SOFTWARE QUE PODEM SER SUBSTITUÍDOS E ATUALIZADOS
DE FORMA INDEPENDENTE.
• BIBLIOTECAS = SÃO COMPONENTES LIGADOS DIRETAMENTE AO PROGRAMA USANDO
CHAMADAS DE FUNÇÃO EM MEMÓRIA
• SERVIÇOS = SÃO COMPONENTES OUT-OF-PROCESS, QUE SE COMUNICAM PELA REDE
(REST OU RPC)
• SERVIÇOS != BIBLIOTECAS SERVIÇOS SÃO DEPLOYADOS DE FORMA INDEPENDENTE
5. Organizados Entorno de
Capacidades do Negócio
Lei de Conway’s
Times Multi-Funcionais (UX, Front-end, Back-end, DB)
“ANY ORGANIZATION THAT DESIGNS A SYSTEM
(DEFINED BROADLY) WILL PRODUCE A DESIGN WHOSE
STRUCTURE IS A COPY OF THE ORGANIZATION'S
COMMUNICATION STRUCTURE.”
MELVYN CONWAY, 1967
8. Produtos e não Projetos
Project = Início – Meio – Fim Entrega para o Time de Manutenção
Produto = “You Build It, You Run It”, Amazon ou Full Cycle Developer (Netflix)
Accountability e Ownership
https://medium.com/netflix-techblog/full-cycle-developers-at-netflix-a08c31f83249
https://aws.amazon.com/blogs/enterprise-strategy/enterprise-devops-why-you-should-run-what-you-build
“You build it, you run it” -Werner Vogels
9. Smart Endpoints And Dumb Pipes
SOA
ESB Enterprise Service Bus (IIB, BW, Rendezvous, BPEL, WS-Choreography)
Microserviços
REST, gRPC, GraphQL, Mensagerias Leves (Kafka, RabbitMQ)
10. Princípios de Microsserviços
Sam Newman
https://samnewman.io
Small Autonomous services
that work together, modelled
Around a business domain
Notas do Editor
Características em Comum
Componente
- independently replaceable
- independentrly upgradeable
Library vs Services