官术网_书友最值得收藏!

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.

主站蜘蛛池模板: 赤城县| 台湾省| 青州市| 井研县| 浦县| 吉首市| 隆昌县| 东光县| 镇安县| 巫山县| 枣庄市| 新兴县| 佛学| 祁东县| 巴东县| 分宜县| 年辖:市辖区| 东乡族自治县| 荃湾区| 武乡县| 呼玛县| 穆棱市| 博客| 新民市| 蒙城县| 丹巴县| 乌恰县| 东城区| 连平县| 张家港市| 壶关县| 遂宁市| 云梦县| 陈巴尔虎旗| 武汉市| 西城区| 太康县| 凭祥市| 清水河县| 浙江省| 宁国市|