Distribuez vos traitements Python avec Celery et Docker Swarm

Magazine
Marque
GNU/Linux Magazine
Numéro
244
Mois de parution
janvier 2021
Spécialité(s)


Résumé

Le temps, c'est de l'argent ! Alors, n'en gaspillez plus avec des traitements interminables, distribuez-les !


Le développement d'applications et de scripts implique généralement de maîtriser le temps d'exécution. Dans ce sens, il est important d'apporter une solution pour les traitements les plus lourds.

Après quelques optimisations algorithmiques, vous avez peut-être fait appel aux threads pour paralléliser les traitements qui le permettent.

Cette solution permet en effet d'exploiter au mieux votre CPU multicœur, mais n'est pas évolutive à souhait. En production, vous ne pourrez pas augmenter indéfiniment les capacités de vos processeurs et ce n'est d'ailleurs pas souhaitable. Une machine surdimensionnée coûte bien plus cher et devient un point de défaillance unique (SPOF).

Heureusement, il existe d'autres solutions bien plus évolutives comme Celery [1] que nous associerons à Docker Swarm pour simplifier le déploiement et la mise à l'échelle.

1. Un cas concret

Celery<…

La suite est réservée aux abonnés. Il vous reste 96% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Mise en place d’une IP virtuelle avec Corosync et Pacemaker

Magazine
Marque
GNU/Linux Magazine
Numéro
209
Mois de parution
novembre 2017
Spécialité(s)
Résumé
Dans la course à la haute disponibilité, le basculement automatique en cas de défaillance est un mécanisme incontournable pour assurer la continuité de service. Par exemple, vous pouvez avoir déployé le meilleur des répartiteurs de charge, si vous n’en déployez qu’un, vous créerez par la même occasion un point unique de défaillance. La mise en place d’une IP virtuelle va vous permettre d’éviter cela, suivez le guide...

Les listes de lecture

Python niveau débutant

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.

Au pays des algorithmes

11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.

Analyse de données en Python

10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture