Planejamento de capacidade: partições e replicação
Aprenda a dimensionar tópicos com o número adequado de partições e o fator de replicação correto para equilibrar vazão, paralelismo, durabilidade e custo operacional.
Planejamento de capacidade: partições e replicação é uma aula grátis de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Advanced Spring Boot 4: Event-Driven Architecture (Kafka), e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em 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=3Creating 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:9092Planning 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.
Aprenda Advanced Spring Boot 4: Event-Driven Architecture (Kafka) com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 12
- Aulas
- 48
Perguntas Frequentes
A aula “Planejamento de capacidade: partições e replicação” é grátis?
Sim — o texto completo de “Planejamento de capacidade: partições e replicação” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Advanced Spring Boot 4: Event-Driven Architecture (Kafka), atualize para CoddyKit PRO. O curso de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) inclui 4 aulas no total.
O que vou aprender em “Planejamento de capacidade: partições e replicação”?
Aprenda a dimensionar tópicos com o número adequado de partições e o fator de replicação correto para equilibrar vazão, paralelismo, durabilidade e custo operacional. Você pratica Advanced Spring Boot 4: Event-Driven Architecture (Kafka) com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Advanced Spring Boot 4: Event-Driven Architecture (Kafka)?
Nenhuma experiência prévia é necessária. Advanced Spring Boot 4: Event-Driven Architecture (Kafka) no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Planejamento de capacidade: partições e replicação”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Advanced Spring Boot 4: Event-Driven Architecture (Kafka)?
Sim. Cada aula de Advanced Spring Boot 4: Event-Driven Architecture (Kafka) inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Dicas de ajuste de desempenho para Kafka
- Produtores e consumidores idempotentes
- Implantando aplicações Spring Boot com Kafka na nuvem
- Planejamento de capacidade: partições e replicação