5/27/2023 0 Comments Reddit dark envoy![]() ![]() The most critical problem for our use cases is poor connection reuse. As those blog posts attest we’ve spent a lot of time working around these problems. This results in unbalanced load across all CPU cores, which leads to slowness.īecause of this request-process pinning effect, requests that do CPU heavy or blocking IO tasks can slow down other requests. The NGINX worker (process) architecture has operational drawbacks for our use cases that hurt our performance and efficiency.įirst, in NGINX each request can only be served by a single worker. Architecture limitations hurt performance For some limitations, we optimized or worked around them. Over the years, our usage of NGINX has run up against limitations. Let’s dig in on why we chose to replace our legacy service and how we developed Pingora, our new system designed specifically for Cloudflare’s customer use cases and scale. This proxy service powers our CDN, Workers fetch, Tunnel, Stream, R2 and many, many other features and products. Today, we’re focusing on a different part of the equation: the service that proxies traffic between our network and servers on the Internet. In the past, we’ve talked a lot about how browsers and other user agents connect to our network, and we’ve developed a lot of technology and implemented new protocols (see QUIC and optimizations for http2) to make this leg of the connection more efficient. Many Cloudflare customers and users use the Cloudflare global network as a proxy between HTTP clients (such as web browsers, apps, IoT devices and more) and servers. We could no longer get the performance we needed nor did NGINX have the features we needed for our very complex environment. It was great for many years, but over time its limitations at our scale meant building something new made sense. Today we are excited to talk about Pingora, a new HTTP proxy we’ve built in-house using Rust that serves over 1 trillion requests a day, boosts our performance, and enables many new features for Cloudflare customers, all while requiring only a third of the CPU and memory resources of our previous proxy infrastructure.Īs Cloudflare has scaled we’ve outgrown NGINX. This post is also available in 简体中文 and 繁體中文. ![]()
0 Comments
Leave a Reply. |