Arquitetura de software

12 guias · cerca de 2 horas de leitura

Esta página foi traduzida do inglês com a ajuda de IA e conferida com o original. Ler a versão em inglês

Arquitetura é o conjunto de decisões caras de mudar. Esta trilha dá a você o vocabulário e os trade-offs por trás dos grandes estilos — em camadas e n-tier, orientado a serviços, microsserviços, domain-driven design, reativo — e as preocupações transversais que decidem se um sistema sobrevive ao contato com a produção: design e gestão de APIs, desempenho e testes de carga, transações distribuídas e frameworks de arquitetura corporativa.

Para quem é

  • Desenvolvedores seniores migrando para arquitetura
  • Arquitetos formalizando seus conhecimentos
  • Líderes técnicos avaliando designs de sistemas

Trilha de aprendizado

Leia na ordem para um curso completo ou escolha o tema de que você precisa.

  1. 1Arquitetura em camadas e n-tier: tiers, camadas e a regra de dependênciaO que diferencia um tier de uma camada, como evoluíram os sistemas de dois, três e n tiers, como manter a lógica de negócio testável e onde as camadas falham.Iniciante11 min de leitura
  2. 2Arquitetura orientada a serviços (SOA) e o barramento de serviços corporativo (ESB)Por que a SOA nasceu dos silos de aplicações, o que define um serviço, como SOAP, WSDL e o ESB se encaixam e como a SOA se compara aos microsserviços.Intermediário13 min de leitura
  3. 3Microsserviços: fronteiras de serviço, deploy independente e o custo realO que o estilo de microsserviços realmente exige (deploy autônomo, dados por serviço, fronteiras sensatas) e como decidir se você precisa dele.Intermediário12 min de leitura
  4. 4Padrões de projeto para microsserviços: resiliência, descoberta, dados e observabilidadeUm catálogo prático de padrões de microsserviços: gateway, descoberta, circuit breaker, bulkhead, retry, saga, outbox, CQRS e service mesh.Avançado11 min de leitura
  5. 5Domain-Driven Design: linguagem ubíqua, agregados e bounded contextsComo o DDD constrói o software em torno de um modelo compartilhado do negócio: bounded contexts, agregados em Java, context maps e arquitetura hexagonal.Avançado10 min de leitura
  6. 6Design de APIs REST: recursos, semântica HTTP, versionamento e formatos de erroComo projetar APIs HTTP que envelhecem bem: modelagem de recursos, métodos e status, paginação, versionamento, erros RFC 9457 e ETags.Intermediário11 min de leitura
  7. 7API management e API gateways: políticas, rate limiting, planos e portaisO que um API gateway faz que um load balancer e um service mesh não fazem, como funcionam rate limiting e API keys, e como escolher uma plataforma.Intermediário12 min de leitura
  8. 8Sistemas reativos: backpressure, Reactive Streams e Project ReactorO que reativo significa de fato: I/O não bloqueante, backpressure, o contrato Reactive Streams, pipelines do Reactor e quando as virtual threads levam a melhor.Avançado9 min de leitura
  9. 9Performance de aplicações: latência, percentis, profiling e a JVMUm método baseado em evidências para deixar aplicações rápidas: lei de Little, percentis, profiling, GC, acesso ao banco de dados e cache.Avançado12 min de leitura
  10. 10Metodologia de testes de carga: modelos de carga, tipos de teste e análiseComo planejar testes de desempenho que prevejam a produção: modelo de carga, ramp-up, fidelidade do ambiente, métricas e leitura dos resultados.Intermediário11 min de leitura
  11. 11Arquitetura corporativa e TOGAF: o ADM, os domínios e a governançaPara que serve a arquitetura corporativa, como o ciclo ADM do TOGAF funciona fase a fase, os quatro domínios, os building blocks e a governança.Intermediário11 min de leitura
  12. 12Transações distribuídas e consistência: 2PC, sagas, outbox e CAPACID versus BASE, o que CAP e PACELC dizem de fato, por que o commit em duas fases bloqueia e como funcionam sagas, outbox e idempotência.Avançado12 min de leitura