green-ball

Beanstalkd – Job Queuing

Posted on 10/07/2013 · Posted in Programmation, Réseau

Beanstalkd est un service de Job Queuing efficace et surtout simple que je souhaite vous présentez depuis un long moment.

Pour rappel, les systèmes de Job Queuing sont utilisés sur des traitements type Producteur-Consommateur asynchrone, ils permettent une évolution horizontale de vos projets.

Des services réseaux comme Beanstalkd, RabbitMQ ou ZeroMQ simplifient le transfert de message entre différents serveurs, d’où l’évolution horizontale.

On différencie Beanstalkd de ses concurrents par la simplicité d’utilisation et d’administration.
Par exemple, RabbitMQ est un outil de Message Queuing très complet mais dont la mise en place, l’utilisation et l’administration sont plus difficiles. ZeroMQ est un protocole Socket à faible latence, il s’agit d’un Framework plus que d’un service d’entreprise.

Beanstalkd en plus de sa simplicité, dispose d’autres avantages :

  • Des clients dans de nombreux languages
  • Système de Tubes
  • Rapide et peu consommateur de cycle CPU
  • Persistance des messages
  • Et bien d’autres…

Pour les utilisateurs PHP,
Vous pouvez utiliser directement la librairie pda/peanstalk.
Si vous êtes développeur Symfony 2, LeezyPheanstalkBundle fournit une intégration de la librairie ainsi que differentes fonctions liées à Symfony :

Si vous voulez poursuivre un peu vos lectures sur Beanstalk, voici quelques liens en Anglais : Les avantages et désavantages de Beanstalkd, Pourquoi devez-vous étudier Beanstalkd.