在微服务架构中聚合原始数据分析的位置

时间:2017-08-15 14:30:39

标签: java architecture analytics microservices aggregation

我们需要为后台聚合分析。我们的系统遍布分析规范,每个微服务都会创建自己的原始数据。问题我们应该将这些原始数据聚合在一起用于分析目的:(我想过两种方式)

  1. 我们应该创建另一个新服务(例如分析服务),它将聚合来自所有服务的所有原始数据(通过将数据推送到其中)并在后台获取最终结果之后准备聚合

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

  3. 感谢。

1 个答案:

答案 0 :(得分:3)

有大量的框架和服务可以为您完成此任务。 Dropwizard,statsd,New Relic,App Dynamics。做一些研究。我会说不要自己动手,因为你会花更多的时间来创建和添加功能到你的指标系统,而不是从中获得价值。使用已经开发的一系列功能,使用开箱即用的东西快速启动和运行。

- 更新 -

在决定跨服务指标生成/收集系统时,我会查找以下内容。

  • 最小到没有源代码操作。许多库可以在不实际修改源代码的情况下检查运行时。如果您以后需要,还可以将API与检测结合使用,以添加特定的度量标准收集代码。
  • 轻松收藏。将度量标准收集服务指向收集器应该很容易配置。
  • 轻松查看/聚合。收集指标后,应该很容易看到数据的来源以及数据点。

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