On the ground, microservice practitioners quickly realized that the majority of operational issues that arise from moving to a distributed architecture are rooted in two areas: networking as well as observability. It is a much more difficult task to network and troubleshoot a collection of interconnected distributed services than a single monolithic app. Envoy is a high-performance, self-contained server with a small memory footprint. It can be used alongside any framework or application language. Envoy supports advanced load balance features such as automatic retries and circuit breaking, global rate limit, request shadowing, zone load balancing, request shadowing, global rate limiting, circuit breaking, circuit breaking, and global rate limiting. Envoy offers robust APIs to dynamically manage its configuration.