2009-12-19 7 views
3

Je suis nouveau chez Gearman. J'ai des questions suivantes sur les utilisations optimisées de Gearman:Questions sur l'architecture Gearman

1) Je pense que le travailleur attend un travail comme une "chaîne". Puis-je envoyer un tableau ou un hachage en tant que travail au travailleur? Si ce n'est pas le cas, JSON est-il le meilleur format d'emploi pour envoyer un tableau/hachage?

2) Puis-je joindre des routes d'application de rails en tant qu'ouvrier pour Job Server?

3) Comment vérifiez-vous si un travailleur fonctionne ou pas? Existe-t-il un outil d'administration disponible pour les statistiques Job Server et Worker?

4) Puis-je concevoir un système ROR, de sorte que chaque requête passe par le serveur de travaux Gearman? J'ai plusieurs applications utilisant la même base de données (certaines d'entre elles sont l'application iPhone, l'application Android, le site Web). Mon objectif principal est d'accéder au contenu en utilisant l'API générale pour toutes ces applications. Ou Gearman est plus approprié pour les processus d'arrière-plan?

Merci.

Répondre

1

Je ne peux pas dire que je sais quoi que ce soit à propos de gearman, mais je pense que je peux répondre à la première question. Lorsque vous voulez passer des objets à d'autres méthodes, vous devez le sérialiser d'une manière ou d'une autre (cela est presque toujours fait lors du passage d'un objet à un autre processus). Le "meilleur" moyen de faire cela dépend beaucoup de ce que vous voulez envoyer. JSON est un moyen, et est probablement l'un des plus petits quand il s'agit de transférer la taille. Donc, oui, vous pouvez utiliser JSON pour transférer des hachages et des tableaux.

2

Puis-je envoyer un tableau ou Hash comme Job pour travailleur? Si ce n'est pas le cas, JSON est-il le meilleur format d'emploi pour envoyer un tableau/hachage?

Tout type de chaîne fera l'affaire; cependant, JSON est génial car il peut être décodé facilement et utilisé pour hydrater un modèle/une entité.

Puis-je joindre des voies d'application des rails comme travailleur pour Job Server?

Je préfère généralement écrire applications/scripts en tant que travailleurs autonomes. Ruby serait génial pour ça. Vous pourriez même écrire ces scripts Thor.

est-il un outil d'administration disponible pour Job Server et statistiques travailleurs?

Si vous êtes à l'aise avec le shell, cela peut fonctionner pour vous: Any way to access Gearman administration?

Ou Gearman est plus approprié pour les processus d'arrière-plan?

Oui, vous aurez un meilleur contrôle si vous utilisez Gearman pour les processus de travail autonomes plutôt que d'essayer d'exécuter toute votre application sur le dessus de celui-ci.