在微服务架构中聚合原始数据分析的位置
Where to aggregate raw data analytics within microservice architecture
我们需要为我们的后台汇总分析。分析规范遍及我们的系统,每个微服务都创建自己的原始数据。问题 我们应该在哪里聚合这些原始数据以用于分析目的:(我考虑了两种方法)
我们应该创建另一个新服务(例如分析服务),它将聚合来自所有服务的所有原始数据(通过将数据推送到其中)并在后台接受之后准备聚合最终结果
每个服务都将聚合其自身的分析,我们的后台将发送请求(并缓存)来自所有微服务的聚合结果?
谢谢。
有大量的框架和服务可以为您做到这一点。 Dropwizard、statsd、New Relic、App Dynamics。只是做一些研究。我会说不要自己动手,因为你会花更多的时间来创建和添加功能到你的指标系统,而不是从中获得价值。使用开箱即用的东西来启动并运行 快速使用大量已经开发的功能。
-- 更新--
以下是我在决定跨服务指标生成/collection 系统时会寻找的东西。
- 极少甚至没有源代码操作。许多库可以在不实际修改源代码的情况下检查运行时。还有一些 API 可以与检测结合使用,以在以后需要时添加特定的指标收集代码。
- 简单collection。将您的指标收集服务指向收集器应该很容易配置。
- 轻松查看/聚合。收集指标后,应该很容易看出数据来自何处以及数据点是什么。
基本上,选择一个能以最少的工作量获得最大收益的。您可能会发现基本解决方案将满足您的需求。如果没有,请花时间添加额外的收集器/仪表板。
我们需要为我们的后台汇总分析。分析规范遍及我们的系统,每个微服务都创建自己的原始数据。问题 我们应该在哪里聚合这些原始数据以用于分析目的:(我考虑了两种方法)
我们应该创建另一个新服务(例如分析服务),它将聚合来自所有服务的所有原始数据(通过将数据推送到其中)并在后台接受之后准备聚合最终结果
每个服务都将聚合其自身的分析,我们的后台将发送请求(并缓存)来自所有微服务的聚合结果?
谢谢。
有大量的框架和服务可以为您做到这一点。 Dropwizard、statsd、New Relic、App Dynamics。只是做一些研究。我会说不要自己动手,因为你会花更多的时间来创建和添加功能到你的指标系统,而不是从中获得价值。使用开箱即用的东西来启动并运行 快速使用大量已经开发的功能。
-- 更新--
以下是我在决定跨服务指标生成/collection 系统时会寻找的东西。
- 极少甚至没有源代码操作。许多库可以在不实际修改源代码的情况下检查运行时。还有一些 API 可以与检测结合使用,以在以后需要时添加特定的指标收集代码。
- 简单collection。将您的指标收集服务指向收集器应该很容易配置。
- 轻松查看/聚合。收集指标后,应该很容易看出数据来自何处以及数据点是什么。
基本上,选择一个能以最少的工作量获得最大收益的。您可能会发现基本解决方案将满足您的需求。如果没有,请花时间添加额外的收集器/仪表板。