Envoy

Envoy is an open-source reverse proxy that streamlines the management and optimisation of network performance in distributed applications.

Who uses this technology?

General usage

Reverse proxies like that offered by web servers such as Nginx are great for improving an application’s security, reliability and performance. However their effectiveness decreases when an application is built with a distributed architecture such as microservices

The challenge. Advanced applications like marketplaces can have hundreds of interdependent microservices. The more complex the microservices architecture, the more difficult it becomes to detect, trace and fix issues. This has important implications for the reliability, performance and security of an application. Especially since monitoring and maintaining each microservice separately is very time-consuming and resource-intensive. 

Envoy solves this challenge by providing an infrastructure layer (‘service mesh’) to monitor and manage communication between microservices. This service mesh consists of independent mini proxies (‘sidecar proxies’) for each microservice, which makes it much easier for developers to pinpoint the sources of issues and remedy them.

Each sidecar proxy does the usual proxy jobs of:

  • Service discovery – detecting the microservice servers
  • Health checking – finding out if the servers are operational and able to accept requests
  • Load balancing – routing requests around on-functional or overloaded servers
  • Caching – server responses with content that don’t change often (e.g. logos and stylesheets) are saved in server memory for faster response times
  • Security features – e.g. rate limiting, authentication, and DDoS mitigation

Stats and logs for the whole application network can be exported to a central interface that gives a birdseye (application) and granular view (individual microservices) of performance and issues. This allows developers to configure proxy settings at application or component level.

Since microservices can be built with many different technologies, it’s important to note that Envoy works with any programming language, framework or combinations of them. 

Popularity

Envoy has quickly established an enthusiastic support base since its release by Lyft in 2016. Contributors to Envoy ongoing development include some of the world’s largest digital platforms like Google, Amazon, Alibaba, Salesforce, Apple, Shopify and Airbnb.

Marketplace benefits

When the ride-hailing app, Lyft, migrated from a single-tier architecture to hundreds of microservices, it led to a growing number of service failures. Their developed team subsequently created Envoy to help them track and manage the health of each individual component, as well as global application health. A 95% reduction in load issues made a huge improvement in user experience.

CobbleWeb has integrated Envoy with a number of marketplace platforms to improve their performance and maintenance.

We're here to help!

Would you like to know more about the suitability of a particular technology for your marketplace? Get in touch for a free audit and recommendations.