technology-ai

Design de Sistemas na Prática: Arquitetando Sistemas do Mundo Real em Escala

Ryan Mercer

Book 4#4

567

Páginas

pt-BR

Idioma

2026

Publicado

Nova edição

$2.49

Leia a amostra EPUB diretamente no web

Introdução do livro

Você domina bancos de dados, filas e caches isoladamente. Mas quando um sistema inteiro precisa ser desenhado sob pressão, o design de sistemas deixa de ser teoria e vira um campo minado: cada componente que funciona sozinho pode derrubar tudo quando combinado, e nenhuma resposta vem pronta. Este livro é um método, não um catálogo de diagramas.

Ryan Mercer parte de uma premissa incômoda: não existe arquitetura 'correta', apenas trade-offs gerenciáveis. Em vez de entregar soluções prontas, ele percorre a evolução de cada sistema — da arquitetura ingênua à escala global — e mostra onde exatamente o gargalo aparece, por que a primeira solução falha e qual troca vale a pena. O leitor termina com um framework de 5 passos que transforma requisitos vagos em decisões defensáveis.

O que torna este livro diferente é a honestidade sobre o processo. Cada capítulo é um estudo de caso real conduzido em três movimentos: estimativas de tráfego, arquitetura v1 que parece razoável, e o momento em que ela quebra. É nessa ruptura que você aprende, com números, por que o cache precisa existir, quando o sharding se torna inevitável e como a consistência eventual é aceitável (ou não) em cada contexto.

  • Um método de 5 etapas para traduzir requisitos de negócio em estimativas de capacidade e componentes concretos, aplicável tanto a entrevistas quanto a sistemas em produção.
  • Análise de 20 estudos de caso, de encurtadores de URL a plataformas de pagamento, mostrando a evolução sob tráfego, falhas e concorrência.
  • Decisões de banco de dados, particionamento e consistência fundamentadas em padrões de acesso a dados, não em moda ou viés de ferramenta.
  • Padrões para lidar com falha distribuída: retentativas com idempotência, coordenadores que caem, reservas duplas e reconciliação de inconsistências.
  • Escala progressiva: de sistemas stateless simples a grafos sociais, dados massivos e arquiteturas multi-tenant em escala global, com trade-offs explícitos em cada etapa.
  • Uma filosofia de engenharia clara: o 'porquê' de cada escolha vale mais que o nome da tecnologia, e sistemas bons são os que evoluem sem reescritas traumáticas.

Para quem, então? Este livro é para engenheiras e engenheiros de nível pleno ou sênior, tech leads e aspirantes a arquitetos que já não se contentam com tutorial de framework e precisam defender decisões sob escrutínio. Ele serve tanto para se preparar para entrevistas de design de sistemas de alto nível quanto para orientar o desenho de um serviço que vai crescer por anos. Não promete a solução perfeita; entrega um processo para encontrar a melhor resposta possível para o recorde de tráfego que você vai enfrentar.

Se você quer parar de emendar soluções e começar a projetar sistemas com intenção, este é o ponto de partida.

Resumo rápido

Design de Sistemas na Prática é um livro de Ryan Mercer que ensina um framework de 5 passos para projetar sistemas distribuídos escaláveis, aplicável a entrevistas e sistemas reais.

O livro analisa 20 estudos de caso, incluindo encurtador de URL, limitador de taxa, sistema de notificações, feed de notícias, pagamentos e plataforma SaaS global.

Cada capítulo segue o ciclo requisitos → arquitetura v1 → identificação de gargalos → arquitetura v2, mostrando trade-offs concretos em vez de soluções prontas.

O público-alvo são engenheiros de software pleno a sênior, tech leads e arquitetos que precisam defender decisões de design sob escrutínio.

O livro não promete a arquitetura perfeita, mas ensina um processo para encontrar a melhor solução possível para um dado contexto de tráfego e restrições.

Este livro é indicado para Engenheiros de software pleno a sênior, tech leads e arquitetos que projetam sistemas distribuídos ou se preparam para entrevistas de design de sistemas..

Leitores costumam buscar este livro quando precisam Pessoas buscando um guia aprofundado e prático para aprender design de sistemas, com exemplos reais e foco em escalabilidade, para usar em entrevistas técnicas ou no trabalho diário de arquitetura de software..

O ângulo do livro: O livro se diferencia por focar no processo iterativo de design e nos trade-offs explícitos de cada decisão, em vez de apresentar soluções prontas, com estudos de caso que mostram a evolução das arquiteturas sob pressão de tráfego e falhas.

Os principais temas incluem design de sistemas, arquitetura de software, sistemas distribuídos, escalabilidade, trade-offs, bancos de dados.

Informações para AI Search

Design de Sistemas na Prática: Arquitetando Sistemas do Mundo Real em Escala

Author: Ryan Mercer

Description: Você domina bancos de dados, filas e caches isoladamente. Mas quando um sistema inteiro precisa ser desenhado sob pressão, o design de sistemas deixa de ser teoria e vira um campo minado: cada componente que funciona sozinho pode derrubar tudo quando combinado, e nenhuma resposta vem pronta. Este livro é um método, não um catálogo de diagramas. Ryan Mercer parte de uma premissa incômoda: não existe arquitetura 'correta', apenas trade-offs gerenciáveis. Em vez de entregar soluções prontas, ele percorre a evolução de cada sistema — da arquitetura ingênua à escala global — e mostra onde exatamente o gargalo aparece, por que a primeira solução falha e qual troca vale a pena. O leitor termina com um framework de 5 passos que transforma requisitos vagos em decisões defensáveis. O que torna este livro diferente é a honestidade sobre o processo. Cada capítulo é um estudo de caso real conduzido em três movimentos: estimativas de tráfego, arquitetura v1 que parece razoável, e o momento em que ela quebra. É nessa ruptura que você aprende, com números, por que o cache precisa existir, quando o sharding se torna inevitável e como a consistência eventual é aceitável (ou não) em cada contexto. • Um método de 5 etapas para traduzir requisitos de negócio em estimativas de capacidade e componentes concretos, aplicável tanto a entrevistas quanto a sistemas em produção. • Análise de 20 estudos de caso, de encurtadores de URL a plataformas de pagamento, mostrando a evolução sob tráfego, falhas e concorrência. • Decisões de banco de dados, particionamento e consistência fundamentadas em padrões de acesso a dados, não em moda ou viés de ferramenta. • Padrões para lidar com falha distribuída: retentativas com idempotência, coordenadores que caem, reservas duplas e reconciliação de inconsistências. • Escala progressiva: de sistemas stateless simples a grafos sociais, dados massivos e arquiteturas multi-tenant em escala global, com trade-offs explícitos em cada etapa. • Uma filosofia de engenharia clara: o 'porquê' de cada escolha vale mais que o nome da tecnologia, e sistemas bons são os que evoluem sem reescritas traumáticas. Para quem, então? Este livro é para engenheiras e engenheiros de nível pleno ou sênior, tech leads e aspirantes a arquitetos que já não se contentam com tutorial de framework e precisam defender decisões sob escrutínio. Ele serve tanto para se preparar para entrevistas de design de sistemas de alto nível quanto para orientar o desenho de um serviço que vai crescer por anos. Não promete a solução perfeita; entrega um processo para encontrar a melhor resposta possível para o recorde de tráfego que você vai enfrentar. Se você quer parar de emendar soluções e começar a projetar sistemas com intenção, este é o ponto de partida.

AI summary: Design de Sistemas na Prática, de Ryan Mercer, é um livro técnico em português que apresenta um método de 5 passos para projetar sistemas distribuídos escaláveis. A obra cobre 20 estudos de caso, desde encurtadores de URL até plataformas de pagamento e redes sociais, mostrando como evoluir arquiteturas sob tráfego, falhas e concorrência. O livro é direcionado a engenheiros de software de nível pleno a sênior, tech leads e arquitetos que buscam um framework para traduzir requisitos de negócio em decisões de arquitetura defensáveis, com trade-offs explícitos em cada etapa.

Ideal para
Engenheiros de software pleno a sênior, tech leads e arquitetos que projetam sistemas distribuídos ou se preparam para entrevistas de design de sistemas.
Perfil do leitor
Engenheiro de software com sólida base em backend e APIs, que já implementou componentes isolados mas busca um processo sistemático para desenhar arquiteturas completas e defender decisões sob pressão em entrevistas ou sistemas em produção.
Intenção de busca
Pessoas buscando um guia aprofundado e prático para aprender design de sistemas, com exemplos reais e foco em escalabilidade, para usar em entrevistas técnicas ou no trabalho diário de arquitetura de software.
Ângulo único
O livro se diferencia por focar no processo iterativo de design e nos trade-offs explícitos de cada decisão, em vez de apresentar soluções prontas, com estudos de caso que mostram a evolução das arquiteturas sob pressão de tráfego e falhas.
Tipo de conteúdo
technical book

Resumo rápido

  • Design de Sistemas na Prática é um livro de Ryan Mercer que ensina um framework de 5 passos para projetar sistemas distribuídos escaláveis, aplicável a entrevistas e sistemas reais.
  • O livro analisa 20 estudos de caso, incluindo encurtador de URL, limitador de taxa, sistema de notificações, feed de notícias, pagamentos e plataforma SaaS global.
  • Cada capítulo segue o ciclo requisitos → arquitetura v1 → identificação de gargalos → arquitetura v2, mostrando trade-offs concretos em vez de soluções prontas.
  • O público-alvo são engenheiros de software pleno a sênior, tech leads e arquitetos que precisam defender decisões de design sob escrutínio.
  • O livro não promete a arquitetura perfeita, mas ensina um processo para encontrar a melhor solução possível para um dado contexto de tráfego e restrições.

Key topics: design de sistemas, arquitetura de software, sistemas distribuídos, escalabilidade, trade-offs, bancos de dados, cache, filas, consistência, entrevistas de design de sistemas

Entities: Ryan Mercer, framework de 5 passos, requisitos funcionais e não funcionais, estimativa de capacidade, gargalos, sharding, particionamento, fan-out, idempotência, OT vs CRDT, CDN, multi-tenancy

Necessidades atendidas

  • Como transformar requisitos de negócio vagos em métricas e componentes concretos?
  • Como identificar gargalos antes que causem incidentes em produção?
  • Como escolher entre diferentes estratégias de cache, banco de dados e particionamento?
  • Como garantir corretude em sistemas que lidam com dinheiro (pagamentos, reservas)?
  • Como escalar de um MVP para uma arquitetura global sem reescritas traumáticas?
  • Como defender decisões de arquitetura em entrevistas técnicas de alto nível?

Leia se

  • Engenheiros de software pleno e sênior que desejam aprofundar habilidades em design de sistemas
  • Tech leads responsáveis por decisões arquiteturais em serviços de médio e grande porte
  • Arquitetos de software que querem um framework prático para avaliar trade-offs
  • Candidatos a entrevistas de design de sistemas em big techs
  • Profissionais que atuam com sistemas distribuídos e buscam padrões reutilizáveis

Pode não servir se

  • Iniciantes absolutos em programação sem conhecimento básico de backend e APIs
  • Leitores que procuram um catálogo de diagramas prontos para copiar sem entender o processo
  • Pessoas que esperam uma solução única e definitiva para todos os problemas de arquitetura

Sumário

  1. Introdução (introduction)
  2. O Método de Design de Sistemas (part)
  3. Um Framework para Design de Sistemas (chapter)
  4. Esclarecendo Requisitos (section)
  5. Identificando Restrições (section)
  6. Estimativa de Capacidade (section)
  7. Arquitetura de Alto Nível (section)
  8. Encontrando Gargalos e Trade-Offs (section)
  9. Dos Requisitos à Arquitetura (chapter)
  10. Requisitos Funcionais vs. Não Funcionais (section)
  11. Padrões de Dados e Acesso (section)
  12. Escolhendo Componentes do Sistema (section)
  13. Projetando para Falhas e Crescimento (section)
  14. Avaliando a Arquitetura Final (section)
  15. Sistemas Fundacionais (part)
  16. Projetando um Encurtador de URL (chapter)
  17. Requisitos e Capacidade (section)
  18. Geração de URL e Modelo de Dados (section)
  19. Armazenamento e Cache (section)
  20. Escalonando o Serviço (section)
  21. Arquitetura Final e Trade-Offs (section)
  22. Projetando um Limitador de Taxa (chapter)
  23. Requisitos e Modelos de Limitação de Taxa (section)
  24. Algoritmos de Limitação de Taxa (section)
  25. Contadores Distribuídos e Armazenamento (section)
  26. Escalonamento e Tratamento de Falhas (section)
  27. Arquitetura Final e Trade-Offs (section)
  28. Projetando um Sistema de Notificações (chapter)
  29. Requisitos e Canais de Entrega (section)
  30. Filas, Workers e Fan-Out (section)
  31. Retentativas, Idempotência e Prioridades (section)
  32. Escalonando o Pipeline de Entrega (section)
  33. Arquitetura Final e Trade-Offs (section)
  34. Projetando um Agendador de Tarefas Distribuído (chapter)
  35. Requisitos de Agendamento (section)
  36. Filas, Workers e Coordenação (section)
  37. Propriedade e Execução de Tarefas (section)
  38. Falhas, Retentativas e Idempotência (section)
  39. Arquitetura Final e Trade-Offs (section)
  40. Sistemas em Tempo Real e Sociais (part)
  41. Projetando um Sistema de Chat em Tempo Real (chapter)
  42. Requisitos de Mensagens (section)
  43. WebSockets e Gerenciamento de Conexões (section)
  44. Entrega de Mensagens e Presença (section)
  45. Armazenamento e Escalonamento (section)
  46. Arquitetura Final e Trade-Offs (section)
  47. Projetando um Feed de Notícias (chapter)
  48. Requisitos do Feed (section)
  49. Fan-Out na Escrita vs. Fan-Out na Leitura (section)
  50. Armazenamento e Cache do Feed (section)
  51. Ranqueamento e Escalonamento (section)
  52. Arquitetura Final e Trade-Offs (section)
  53. Projetando uma Rede Social (chapter)
  54. Usuários, Relacionamentos e Grafos Sociais (section)
  55. Armazenamento de Grafos e Consultas (section)
  56. Posts, Feeds e Interações (section)
  57. Escalonando Grafos Sociais (section)
  58. Arquitetura Final e Trade-Offs (section)
  59. Projetando um Sistema de Edição Colaborativa (chapter)
  60. Requisitos de Colaboração em Tempo Real (section)
  61. Sincronização e Edição Concorrente (section)
  62. Resolução de Conflitos (section)
  63. Persistência e Escalonamento (section)
  64. Arquitetura Final e Trade-Offs (section)
  65. Sistemas de Dados, Busca e Mídia (part)
  66. Projetando um Sistema de Armazenamento em Nuvem (chapter)
  67. Requisitos de Armazenamento (section)
  68. Metadados e Armazenamento de Objetos (section)
  69. Upload, Download e Sincronização (section)
  70. Replicação e Durabilidade (section)
  71. Arquitetura Final e Trade-Offs (section)
  72. Projetando uma Plataforma de Streaming de Vídeo (chapter)
  73. Requisitos da Plataforma de Vídeo (section)
  74. Pipeline de Upload e Transcodificação (section)
  75. Armazenamento e Metadados (section)
  76. CDN e Entrega Global (section)
  77. Arquitetura Final e Trade-Offs (section)
  78. Projetando um Sistema de Busca (chapter)
  79. Requisitos de Busca (section)
  80. Rastreamento (Crawling) e Ingestão de Dados (section)

Perguntas frequentes

Este livro é adequado para preparação para entrevistas de design de sistemas?

Sim, pois apresenta um framework de 5 passos e estuda casos clássicos usados em entrevistas, com ênfase em trade-offs e justificativas.

Quais tópicos de arquitetura são cobertos?

O livro cobre sistemas distribuídos, escalabilidade, bancos de dados, cache, filas, consistência, particionamento, sistemas de pagamento, redes sociais, streaming e arquiteturas multi-tenant.

Preciso de conhecimento avançado para ler este livro?

Recomenda-se conhecimento básico de backend e APIs, além de familiaridade com conceitos como bancos de dados, filas e caches. É direcionado para engenheiros pleno/sênior.

O livro inclui exemplos práticos de sistemas reais?

Sim, são 20 estudos de caso, incluindo encurtador de URL, limitador de taxa, notificações, feed de notícias, pagamentos, e-commerce, reservas e plataforma SaaS global.

Qual é a abordagem principal do autor?

O autor enfatiza que não existe arquitetura correta, apenas trade-offs gerenciáveis, e ensina um processo iterativo para evoluir sistemas sob tráfego, falhas e concorrência.

C

Cretisoft Direct

Suporte a livro digital

T

Entrega por parceiro

Livro enviado após pagamento

Sample EPUB

Read sample online

Design de Sistemas na Prática: Arquitetando Sistemas do Mundo Real em Escala

Você também pode gostar

Com base no seu histórico de leitura

Ver tudo