Déploiements
Un déploiement est un groupe nommé de workers qui possède un ensemble de définitions de workflows et reçoit toutes les exécutions correspondantes. Les workers rejoignent un déploiement en définissant la variable d'environnement DEPLOYMENT_NAME au démarrage. Consultez Workers > Démarrer un worker pour la commande de lancement.
Tous les workers exécutés avec le même DEPLOYMENT_NAME forment un déploiement unique. Ils partagent les mêmes définitions de workflows et reçoivent collectivement toutes les exécutions routées vers ce déploiement.
Définissez DEPLOYMENT_NAME pour chaque environnement (par exemple, invoice-service-staging ou invoice-service-prod) afin que les workers de staging et de production ne se disputent jamais les mêmes exécutions.
Pourquoi les déploiements ?
Les déploiements vous offrent quatre fonctionnalités clés :
- Isolation des workers : dans un espace de travail partagé, chaque déploiement reçoit exclusivement les exécutions de ses workflows enregistrés. Plusieurs équipes peuvent exécuter des workers simultanément sans interférer les unes avec les autres.
- Routage automatique : lorsqu'un seul déploiement actif possède un workflow, les exécutions sont automatiquement routées vers lui. Aucune configuration manuelle n'est nécessaire.
- Mise à l'échelle horizontale : exécutez plusieurs workers avec le même
DEPLOYMENT_NAMEpour augmenter le débit. La plateforme répartit automatiquement les tâches entre eux. - Suivi du cycle de vie : un déploiement est considéré comme actif tant qu'au moins l'un de ses workers a envoyé un heartbeat dans la fenêtre de liveness. Les déploiements inactifs sont exclus du routage.
- Contrôle d'accès : restreignez l'enregistrement des workflows à certains utilisateurs et comptes de service grâce aux déploiements durcis.
Pour choisir entre déploiements managés et auto-hébergés, consultez Déploiements. Pour le routage des exécutions, la détection de conflits et l'API Deployments, consultez Auto-héberger des workflows.