Scala的分布式跟踪解决方案?

时间:2013-09-26 15:18:59

标签: scala logging distributed flume zipkin

我将使用Scala和Akka设计分布式系统。我想从集群聚合跟踪消息,并有可能在某种UI中查看它们。 Zipkin是最好的解决方案,还是Flume(+一些包装?),还是其他什么?

1 个答案:

答案 0 :(得分:8)

Zipkin是最好的解决方案。

- zipkin开发者

编辑 - 好的,这是一个严肃的答案:

Zipkin是一个由Twitter开发的分布式跟踪系统,因为我们面向服务的架构非常庞大,以至于很难理解WTF在任何给定的请求中都会发生。说真的,这里是Zipkin中所有服务依赖关系的可视化:

Holy shit that's a lot of services

你的平台这么激烈吗?你应该使用zipkin。我有没有提到它是我见过的最好的缩放系统之一?它没有跟上Twitter级负载的问题,如果你那么大,那对你来说可能很重要。

你说的是什么?你没有Twitter那么大?您只有三个服务:Web前端,某种中间件和数据库后端?也许zipkin对你来说有点矫枉过正。我们已经完成了一些工作,使设置更容易,但我的工作不是为了让你轻松制作zipkin,而是为了让Twitter的zipkin很棒。

尽管如此,如果你计划扩展scala,与Finagle等的推特堆栈是非常好的。不要让所有来自Typesafe的福音传教士欺骗你。当您尝试将其部署在大规模架构中时,它们的堆栈存在一些严重的缺陷。但同样,我们的工作不是告诉你我们的堆栈有多好,甚至可以帮助你使用它。这是为了让我们的筹码真棒。