2017-08-15 108 views
0

我们需要汇总我们后台的分析。分析规范遍布我们的系统,每个微服务都创建它自己的原始数据。问题,我们应该在哪里汇总这些原始数据进行分析的目的:(我想过两种方式)微服务架构中原始数据分析的汇总位置

  1. 我们应该创建另一个新的服务(如分析服务),将聚集来自所有服务的所有原始数据(通过将数据推入其中),然后准备聚合后,后台采取最终结果

  2. 每个服务将聚合它自己的分析,我们的后台将发送请求(和缓存)来自所有微服务的聚合结果?

谢谢。

回答

3

有很多框架和服务可以为您做到这一点。 Dropwizard,statsd,New Relic,App Dynamics。只要做一些研究。我认为不要推出自己的产品,因为您将花费更多时间为您的指标系统创建和添加功能,而不是从中获得价值。使用一些开箱即用的功能,可以快速启动并运行一系列已开发的功能。

- 更新 -

这里有事情,我想看看交叉服务指标生成/采集系统的决定时。

  • 最小值到无源代码操作。许多库可以检查运行时间,而无需实际修改源代码。如果您稍后需要,还可以使用API​​与测试结合使用来添加特定的度量收集代码。
  • 容易收集。将指标收集服务指向收集器应该很容易配置。
  • 易于查看/聚合。收集指标后,应该很容易地看到数据来自哪里,以及数据点是什么。

基本上,选择一个能让你工作最少的人。您可能会发现基本解决方案将满足您的需求。如果没有,花时间添加额外的收藏家/仪表板。

+0

但即使我使用Dropwizard Iam如何收集指标并将其提供给后台? – rayman

+0

Dropwizard做的也是计数(又名聚合) – rayman

+0

检查文档。您可以使用记者将数据推送到收集器。 http://metrics.dropwizard.io/3.2.3/manual/graphite.html – aglassman