Fluxheim/Documentation/Répartiteur de charge

Répartiteur de charge

Exécuter several upstreams behind one public endpoint. Accueil simple, then add health checks and runtime controls.

Deux upstreams

[[vhosts.routes]]
name = "app"
path_prefix = "/"
action = "proxy"

[vhosts.routes.proxy]
upstreams = [
  "10.0.0.11:8080",
  "10.0.0.12:8080",
]
upstream_weights = [100, 50]
upstream_aliases = ["app-a", "app-b"]

Controleees d'equilibrage

ControleeUtilisez-le quand
upstream_weightsLes backends doivent recevoir des parts de trafic differentes.
backup_upstreamsCertains backends ne doivent etre utilises que lorsque les choix primaires echouent.
drain_upstreamsUn backend doit terminer le travail en cours sans recevoir de nouveau trafic.
disabled_upstreamsUn backend doit etre garde hors rotation.
upstream_max_in_flightUn backend a besoin d'une limite locale de concurrence.

Fichier d'upstreams dynamique

[vhosts.routes.proxy]
upstreams_file = "/run/fluxheim/backends/app.txt"
upstreams_file_refresh_secs = 5

Utilisez des upstreams statiques quand vous avez besoin de poids, alias, backup, drain ou etat desactive. Les pools rafraichis par fichier et DNS gardent volontairement un contrat plus petit.

Ce que cela apporte

  • Focused load-balancer release images are available.
  • Les health checks peuvent retirer les backends cassés de la rotation.
  • Les opérations drain et force-down aident pendant les fenêtres de maintenance.
  • L'affinite par cookie gere est disponible quand les sessions ont besoin d'un backend stable.
Français