As companies adopt microservices-based architectures, it is increasingly difficult to carry out two integral parts of running shared services: chargeback and capacity planning. When a request passes through a dozen or more intermediary services, it becomes unclear which product team should pay for it. Predicting future storage needs is similarly challenging.
Daniel Spoonhower demonstrates how context propagation can be a viable option to do chargeback and capacity planning. The OpenTracing project is an open source standard for distributed tracing instrumentation. It is also a mechanism to pass user-defined context through your application with a set of key-value pairs called “baggage.” With myriad frameworks and libraries already OpenTracing compatible, it is possible to use it to do chargeback and capacity planning with greater accuracy and without any associated costs and the maintenance burden.
Daniel walks you through how OpenTracing is integrated into a gRPC library and shows how that can be used to implement chargeback in a gRPC-based system.
Daniel “Spoons” Spoonhower is a cofounder at LightStep, a company that makes complex microservice applications more transparent and reliable. An expert in distributed tracing, he is a core contributor to the OpenTracing project, a CNCF project. Previously, Spoons spent almost six years as a staff software engineer on Google’s Infrastructure and Cloud Platform teams, where he ate lots of snacks and worked on various products. Spoons holds a PhD from Carnegie Mellon University in computer science.
©2017, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org