0

对于简单的统计数据收集场景,AMQP 是否比临时实现有任何优势?它的工作原理是这样的 - 客户端将事件(比我们愿意放入持久存储中的更多)发送到(几个)Web Worker,Worker 聚合它们并写入单个数据库。我认为我不应该考虑为此使用 AMQP,因为我仍然需要网络工作者通过 HTTP 接收来自客户端的事件并发布它们。我错过了什么吗?

4

1 回答 1

0

您可以为此使用 AMQP,但最好使用统计数据收集软件。例如,如果您为数据收集/绘图服务设置了 Graphite,并添加了一个statsd前端,那么您可以通过 UDP(开销最低)发送数据点,并让 statsd 聚合并写入 Graphite 数据库。关键是statsd支持统计收集。您将 statsd 服务器配置为收集 10 个数据点中的 1 个,然后 statsd 客户端将每 10 个数据点中的一个随机发送到服务器(限制网络流量)并statsd计算总计 10 次的聚合。例如,如果您在聚合时间段内获得 3 个数据点,它们的值为 38、42 和 40,则 statsd 将记录 40 个平均数据点和 30 个事件的事件量。

如果您决定走这条路,请务必考虑使用与 statsd 兼容但支持更多测量类型的 metricsd https://github.com/mojodna/metricsd

于 2013-01-13T23:08:44.843 回答