A la queue leu leu

566 vues

Publié le

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
566
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
3
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

A la queue leu leu

  1. 1. intro 1/2• Au début du web on faisait des pages• Puis on sest mis à faire des sites• Maintenant on fait des plate-formes
  2. 2. intro 2/2Désormais, le site web est une partie de linfra…… et bien souvent, cest la partie emergée deliceberg
  3. 3. En synchrone• On est bézu baisé
  4. 4. En asynchrone• monitorer la dispo de vos ressources CPU (=workers);• lancer une tâche quand un worker se libère;• surveiller si la tâche se termine (et si elle se termine bien…);• en cas de problème, réessayer ou alerter.D’où le besoin pour un gestionnaire de file dattentes =Message Queue dans la langue de Shakespeare.
  5. 5. En Python• Celery : la plus connue• rq : alternative light• bindings Python à ØMQ : construisez votre propre gestionnaire !• pleins dautres projets (Mozilla en a mis plusieurs en OSS)
  6. 6. Celery 1/3• A commencé comme une app django• Désormais autonome (mais toujours une intégration avec django=dj-celery)• Gros projet, énormément de fonctionnalités out-of- box : cest un framework à lui tout seul• Nombreux backends (RabbitMQ, redis, Mongo, MySQL…)
  7. 7. Celery 2/3• Le gros pb : toutes les fonctionnalités ne sont pas dispo avec tous les backends !!• Choisir un backend, cest éventuellement se couper de plein de fonctionnalités…• Le backend (RMQ) recommandé est loin dêtre le plus efficace : – Impossible de réessayer une tâche qui a plantée; – Pas de gestion des priorités;• Le code évolue beaucoup et vite : cest bien mais ça peut vous amener à réécrire pas mal de code juste pour suivre les changements de Celery
  8. 8. Celery 3/3Un framework:• Comme tous les frameworks, requiert du temps pour bien le maîtriser• Bien lire la doc, notamment le tableau qui liste les options dispo en fonction des backends• Peut être arrivé un peu tôt.
  9. 9. rq• Plus simple• Doc minimaliste (mais il y a moins à dire)• Redis est le broker• Unix only• Taillé pour Heroku et les services similaires
  10. 10. ØMQØMG ! ØMG !! ØMG !!!
  11. 11. Do It Yourself• Plus simple quon ne le croit !• Tout est disponible dans Python avec gevent et redis
  12. 12. Monitorer• Attention aux features, mais cest pas le plus important.• Coder cest 25% du temps, le plus long, cest de monitorer !
  13. 13. Questions

×