Backend Development 8 min read

A Comparative Overview of Seven Distributed Tracing Components: History, Selection, Experience, and Performance

This article reviews the evolution, technical choices, practical experiences, and performance characteristics of seven popular distributed tracing tools—including CAL, CAT, Dapper, Zipkin, Pinpoint, SkyWalking, and Jaeger—to help engineers select the most suitable solution for micro‑service observability.

Wukong Talks Architecture
Wukong Talks Architecture
Wukong Talks Architecture
A Comparative Overview of Seven Distributed Tracing Components: History, Selection, Experience, and Performance

Development History

eBay created CAL (Centralized Application Logging) in 2002 to monitor rapid traffic growth, and later the author helped develop CAT (Centralized Application Tracking) at Dianping in 2011, which was open‑sourced in Java and gained an active community.

Dapper and Its Successors

Google’s internal Dapper, described in a 2010 paper, inspired many open‑source projects: Twitter’s Zipkin (2012), Naver’s Pinpoint (2012), Uber’s Jaeger (2016, written in Go), and the Chinese Apache SkyWalking, which combines ideas from OneAPM and Pinpoint.

SkyWalking vs Pinpoint

UI Comparison

Both tools inject bytecode for non‑intrusive tracing, but Pinpoint’s UI is considered slightly superior; however, a custom UI based on Daocloud gives SkyWalking a modern look.

Community Support

SkyWalking and CAT are domestic projects with strong Chinese community backing, while Pinpoint’s community activity has waned.

Feature and Performance Comparison

Performance: Pinpoint collects very detailed data, leading to higher overhead, whereas SkyWalking adopts a conservative default strategy with minimal impact.

Component Support: SkyWalking covers more RPC frameworks, message queues, Redis clients, and logging libraries, while Pinpoint has a slight edge in web container and database support.

Alerting: SkyWalking uses flexible webhooks (SMS, email, WeChat), whereas Pinpoint relies on SMS/email and requires MySQL for storage.

Advantages: Pinpoint offers fine‑grained data and a powerful UI but requires heavy HBase infrastructure; SkyWalking benefits from an active community, multi‑language agents, low overhead, and easier extensibility.

Zipkin

Spring Cloud Sleuth can output trace data to the console, but Zipkin provides a graphical UI for collecting and visualizing timing data. Zipkin follows Dapper’s design and eliminates the need for Sleuth.

Reporting Limitations

Zipkin’s APM reporting capabilities are relatively weak, so projects with strong reporting needs may prefer other tracing solutions.

Conclusion

The article presents a comparison chart of several open‑source tracing components and invites readers to share their preferred tool.

References

http://www.passjava.cn https://spring.io/projects/spring-cloud-sleuth https://skywalking.apache.org/zh/2019-02-24-skywalking-pk-pinpoint https://juejin.cn/post/6844903560732213261 https://time.geekbang.org/column/article/441338 https://www.cnblogs.com/zhangs1986/p/8879744.html https://tech.meituan.com/2018/11/01/cat-in-depth-java-application-monitoring.html https://www.cnblogs.com/yyhh/p/6106472.html

Giveaway

The author offers six books (e.g., "201 Principles of Software Development") as a reward for active comments and shares.

MicroservicesobservabilityDistributed TracingPerformance ComparisonZipkinSkyWalkingPinpoint
Wukong Talks Architecture
Written by

Wukong Talks Architecture

Explaining distributed systems and architecture through stories. Author of the "JVM Performance Tuning in Practice" column, open-source author of "Spring Cloud in Practice PassJava", and independently developed a PMP practice quiz mini-program.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.