DevGuideTK
← Trilha Backend

Escalabilidade

Escala vertical e horizontal, e o que precisa mudar no sistema para ele aceitar mais máquinas.

Escalabilidade é a capacidade de um sistema atender mais carga acrescentando recursos: uma máquina maior (escala vertical) ou mais máquinas (escala horizontal).

Um sistema que não escala trava justamente quando dá certo: numa promoção, numa campanha, no crescimento. E acrescentar máquinas só funciona se o código estiver preparado para isso.

  • A escala vertical é simples e tem teto; a horizontal não tem teto, mas exige preparo.
  • Para rodar em várias máquinas, a aplicação não pode guardar estado na memória do processo.
  • Sessões, arquivos e tarefas agendadas precisam sair da instância.
  • O gargalo costuma migrar para o banco de dados.
  • Instâncias precisam sair de cena sem derrubar pedidos em andamento.