2012-10-11 2 views
0

AMQP présente-t-il des avantages par rapport à une implémentation ad-hoc pour un scénario de collecte de statistiques simple? Cela fonctionne comme ceci: les clients envoient des événements (plus que nous ne souhaitons mettre en stockage persistant) à (plusieurs) web workers, les travailleurs les agrègent et écrivent dans une base de données unique. Je ne pense pas que je devrais envisager d'utiliser AMQP pour cela parce que j'ai toujours besoin de web workers pour recevoir des événements des clients via HTTP et pour les publier. Est-ce que je manque quelque chose?Utilisation d'AMQP pour collecter des événements

Répondre

0

Vous pouvez utiliser AMQP pour cela, mais il est préférable d'utiliser un logiciel de collecte de statistiques. Par exemple, si vous configurez Graphite pour votre service de collecte de données/graphisme et que vous ajoutez un frontend statsd, vous pouvez envoyer des points de données via UDP (qui est la plus faible) et laisser agréger statsd et écrire dans la base de données Graphite. L'élément clé est que statsd prend en charge la collecte statistique. Vous configurez votre serveur statsd pour collecter 1 point de données sur 10, puis le client statsd envoie aléatoirement un point de données sur 10 au serveur (limitant le trafic réseau) et statsd calcule les agrégats majorés 10 fois. Par exemple, si vous obtenez 3 points de données dans votre période d'agrégation et que leurs valeurs sont 38, 42 et 40, statsd enregistrerait un point de données moyen de 40 et un volume d'événements de 30 événements.

Si vous décidez d'utiliser cette route, assurez-vous d'utiliser metricsd qui est compatible statsd mais supporte plus de types de mesures https://github.com/mojodna/metricsd

Questions connexes