Horizontal vs Vertical Scaling

DevOps 🟡 Mid

Definition

Vertical = plus de CPU/RAM sur une machine. Horizontal = plus de machines. Le horizontal est quasi illimité mais nécessite des apps stateless.

Analogie

Vertical = acheter un plus gros camion. Horizontal = acheter plus de camions.

Exemple de code

# Vertical : upgrader l'instance
aws ec2 modify-instance --type m5.2xlarge

# Horizontal : ajouter des instances
kubectl scale deployment api --replicas=10

Cas d'usage

Horizontal scaling pour les apps stateless derrière un load balancer.

Anti-pattern

State en mémoire locale : impossible de scaler horizontalement.

Termes lies

#devops#scaling#interview