El diseño de sistemas conecta requisitos, límites de capacidad e invariantes con decisiones sobre datos y componentes. Estas notas explicitan qué protege cada mecanismo, qué fallos admite y cómo comprobar su recuperación.

Guía de estudio: una sola lectura

La lectura principal es SD: Repaso de pagos y liquidación con SRE. Reúne explicación central, invariantes, recorridos, capacidad, diagnóstico e incidentes en una hoja autocontenida. Puede estudiarse de principio a fin sin seguir una secuencia de otros artículos.

El caso completo de pagos y liquidación con SRE permite consultar el diseño E2E y sus decisiones en detalle. Las notas siguientes y Platform Engineering son referencias opcionales para ampliar un tema concreto; no son pasos obligatorios del repaso.

Biblioteca de consulta

  • SD: Framework de Hello Interview — cinco etapas de entrega y cuatro ejes de preparación para una entrevista, con práctica variada y decisiones justificadas.
  • SD: Data Modeling — patrones de acceso, restricciones relacionales, índices compuestos, normalización y localidad de los datos.
  • SD: API Design — estilos de interfaz, recursos, semántica HTTP, paginación, autorización y reintentos.
  • SD: Object Storage — objetos y metadatos, cargas directas con URLs firmadas, multipart y recuperación entre almacenes.
  • SD: Sharding — claves de shard, planificación de capacidad, hotspots, operaciones entre shards y migración segura de datos.
  • SD: Consistent Hashing — asignación en anillo, remapeo acotado, nodos virtuales, hotspots y migración coordinada.
  • SD: Caching — arquitecturas de caché, frescura, eviction, stampedes, claves calientes y recuperación sin saturar la base de datos.
  • SD: Redis — claves, estructuras de datos, slots de Cluster, hash tags, memoria y durabilidad.
  • SD: Message Queues — capacidad, backpressure, orden y recuperación al diseñar trabajo asíncrono.
  • SD: Kafka vs RabbitMQ — colas de tareas, logs retenidos, replay y garantías de entrega con consumidores idempotentes.
  • SD: 2PC vs Saga — límites transaccionales, atomicidad del commit, compensaciones y publicación con outbox.
  • SD: Sistema de boletaje — inventario consistente, reservas temporales y coordinación con pagos bajo alta demanda.
  • SD: Rate Limiter — un diseño distribuido que conecta estado compartido, decisiones atómicas, escalabilidad y recuperación ante fallos.
  • SD: Docker — imágenes, contenedores, caché de construcción, aislamiento y Docker Sandboxes para agentes.

Garantías y recuperación

Entrada de tráfico y entrega de contenido

  • SD: Load Balancing — selección de destinos, salud, conexiones, drenaje y reintentos con una identidad estable.
  • SD: CDN — cache keys, contenido privado, frescura, invalidación y coordinación con el origen.

En Systems Lab, este recorrido comparte los ejes de estado, comunicación, fallos y observabilidad con Homelab, donde se estudia cómo desplegar, observar y recuperar la infraestructura que ejecuta los sistemas.

25 artículos en esta carpeta.