Advanced Spring Boot 4: Event-Driven Architecture (Kafka) · Lección

Planificación de capacidad: particiones y replicación

Aprenda a dimensionar los topics con el número adecuado de particiones y el factor de replicación correcto para equilibrar rendimiento, paralelismo, durabilidad y coste operativo.

Lección 4 de 413 pasos

Planificación de capacidad: particiones y replicación es una lección gratuita de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Advanced Spring Boot 4: Event-Driven Architecture (Kafka), y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

Why Sizing Matters

Partition count and replication factor are hard to change after launch and directly shape throughput, parallelism, and durability. Good capacity planning avoids painful migrations later.

Partitions Drive Parallelism

A consumer group can have at most as many active consumers as there are partitions. More partitions allow more parallel consumers and higher throughput.

Estimating Partition Count

A common heuristic: divide target throughput by per-partition throughput.

  • Measure max producer throughput per partition (p).
  • Measure max consumer throughput per partition (c).
  • partitions = max(target/p, target/c).
partitions = ceil( targetMBs / min(producerMBs, consumerMBs) )

The Cost of Too Many Partitions

More partitions are not free:

  • More open file handles and memory on brokers.
  • Longer leader-election and rebalance times.
  • Higher end-to-end latency.

Plan headroom, but do not wildly over-provision.

Replication Factor

The replication factor is how many copies of each partition exist across brokers. A factor of 3 is standard for production durability.

In-Sync Replicas

With min.insync.replicas=2 and acks=all, a write succeeds only when at least two replicas confirm. This tolerates one broker failure without data loss.

min.insync.replicas=2
replication.factor=3

Creating a Sized Topic

Specify partitions and replication when creating a topic so it starts correctly sized.

kafka-topics.sh --create --topic orders \
  --partitions 12 --replication-factor 3 \
  --bootstrap-server localhost:9092

Planning for Growth

You can increase partitions later but never decrease them, and adding partitions breaks key-based ordering. Pick a count with growth headroom from the start.

Retention and Disk Sizing

Disk need = throughput x retention x replication factor. A topic at 10 MB/s with 7-day retention and RF 3 needs roughly 17 TB. Plan storage accordingly.

Spreading Across Brokers

Ensure partitions and replicas are evenly distributed so no broker becomes a hotspot. Rack-awareness places replicas across failure domains.

Putting It Together

Capacity planning balances parallelism, durability, latency, and cost. Size partitions from throughput, use RF 3 with min ISR 2, and plan disk from retention.

Quick Check

Test your understanding of capacity planning.

Recap

You learned capacity planning.

  • Partition count drives consumer parallelism and throughput.
  • Too many partitions add latency and broker overhead.
  • RF 3 with min ISR 2 tolerates one broker failure.
  • Plan disk from throughput x retention x replication.
Gratis para empezar

Aprende Advanced Spring Boot 4: Event-Driven Architecture (Kafka) con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
12
Lecciones
48

Preguntas frecuentes

¿La lección «Planificación de capacidad: particiones y replicación» es gratis?

Sí — el texto completo de «Planificación de capacidad: particiones y replicación» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Advanced Spring Boot 4: Event-Driven Architecture (Kafka), actualiza a CoddyKit PRO. El curso de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) incluye 4 lecciones en total.

¿Qué aprenderé en «Planificación de capacidad: particiones y replicación»?

Aprenda a dimensionar los topics con el número adecuado de particiones y el factor de replicación correcto para equilibrar rendimiento, paralelismo, durabilidad y coste operativo. Practicas Advanced Spring Boot 4: Event-Driven Architecture (Kafka) con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Advanced Spring Boot 4: Event-Driven Architecture (Kafka)?

No se requiere experiencia previa. Advanced Spring Boot 4: Event-Driven Architecture (Kafka) en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Planificación de capacidad: particiones y replicación»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Advanced Spring Boot 4: Event-Driven Architecture (Kafka)?

Sí. Cada lección de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Consejos para ajustar el rendimiento de Kafka
  2. Productores y consumidores idempotentes
  3. Despliegue de aplicaciones Spring Boot con Kafka en la nube
  4. Planificación de capacidad: particiones y replicación
← Volver a Advanced Spring Boot 4: Event-Driven Architecture (Kafka)