Un jour, une gem

23/02/2012

Jeudi c'est Resque

gem install resque

Resque à la rescousse !

Aujourd’hui je vous présente Resque, une librairie qui permet de créer des tâches, de les mettre à la queue leu leu afin de les exécuter plus tard.

Resque dépend de Redis, un SGBD libre qui bénéficie d’excellentes performances. Pour l’installer, si vous êtes sur Mac et que vous utilisez Homebrew, il vous suffit de taper :

brew install redis

Mais dans quel cas utiliser Resque ? Prenons l’exemple de Recommendable. Pour éviter que notre application soit surchargée, on peut mettre les likes dans une file d’attente.

La gem Recommendable est prévue pour fonctionner avec Resque. Donc si votre serveur Redis est lancé, il vous suffit de balancer la commande suivante :

$ QUEUE=recommendable rake environment resque:work

Ce qui aura pour effet de créer un worker pour traiter la file d’attente. Il est possible d’avoir plusieurs workers.

Resque dispose aussi de fonctionnalités intéressantes comme la possibilité de voir ce que font nos workers, via la commande suivante :

resque-web

Les liens utiles