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

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.

主站蜘蛛池模板: 兴仁县| 贵溪市| 贡嘎县| 墨江| 河南省| 绥滨县| 永平县| 平阳县| 神农架林区| 建宁县| 昭苏县| 鞍山市| 濮阳市| 东乡族自治县| 隆子县| 甘孜| 虎林市| 大宁县| 石棉县| 平昌县| 来宾市| 北海市| 枣庄市| 土默特右旗| 兴城市| 新绛县| 紫阳县| 永德县| 公安县| 辽源市| 嫩江县| 伊宁市| 莲花县| 砀山县| 博客| 华容县| 湘西| 什邡市| 磴口县| 百色市| 同心县|