- Mastering Distributed Tracing
- Yuri Shkuro
- 348字
- 2021-06-11 13:37:28
Preface
Distributed tracing, also known as end-to-end tracing, while not a new idea, has recently began receiving a lot of attention as a must-have observability tool for complex distributed systems. Unlike most other tools that only monitor individual components of the architecture, like a process or a server, tracing plays a rather unique role by being able to observe end-to-end execution of individual requests, or transactions, following them across process and network boundaries. With the rise of such architectural patterns as microservices and functions-as-a-service (or FaaS, or serverless), distributed tracing is becoming the only practical way of managing the complexity of modern architectures.
The book you are about to read is based on my personal experiences of being a technical lead for the tracing team at Uber Technologies. During that time, I have seen the engineering organization grow from a few hundred to several thousand engineers, and the complexity of Uber's microservices-based architecture increasing from a few hundred microservices when we first rolled out Jaeger, our distributed tracing platform, to several thousand microservices we have today. As most practitioners of distributed tracing would tell you, building a tracing system is "the easy part"; getting it widely adopted in a large organization is a completely different challenge altogether, one that unfortunately does not have easy-to-follow recipes. This book is my attempt to provide an end-to-end overview of the problem space, including the history and theoretical underpinning of the technology, the ways to address instrumentation and organizational adoption challenges, the standards emerging in the industry for instrumentation and data formats, and practical suggestions for deploying and operating a tracing infrastructure in real world scenarios.
The book is not intended as a reference material or a tutorial for any particular technology. Instead, I want you to gain an understanding of the underlying principles and trade-offs of distributed tracing and its applications. Equipped with these fundamentals, you should be able to navigate this fairly complex area of technology and find effective ways to apply it to your own use cases and your systems.
- Windows Server 2012 Hyper-V:Deploying the Hyper-V Enterprise Server Virtualization Platform
- Modern Web Testing with TestCafe
- 鴻蒙生態(tài):開啟萬物互聯(lián)的智慧新時代
- UNIX操作系統(tǒng)設(shè)計
- Linux性能優(yōu)化
- Mobile First Design with HTML5 and CSS3
- OpenStack系統(tǒng)架構(gòu)設(shè)計實戰(zhàn)
- 鴻蒙操作系統(tǒng)設(shè)計原理與架構(gòu)
- Windows Vista終極技巧金典
- 程序員必讀經(jīng)典(算法基礎(chǔ)+計算機(jī)系統(tǒng))
- Windows Azure實戰(zhàn)
- Getting Started with Citrix XenApp 6.5
- PrimeFaces Beginner's Guide
- OpenSolaris系統(tǒng)管理
- Windows10開發(fā)入門經(jīng)典