Release of Pingora 0.2, a framework for creating network services

Cloudflare has released the second version of the Pingora framework, designed for developing secure, high-performance network services in Rust. The proxy built with Pingora has been used for about a year in Cloudflare's content delivery network instead of nginx, processing over 40 million requests per second. The code is written in Rust and published under the Apache 2.0 license.

Key features of Pingora:

  • Support for HTTP/1 and HTTP/2 (with plans for HTTP/3), as well as capabilities for building services that use custom protocols or UDP/TCP.
  • Ability to handle requests in multithreaded asynchronous mode.
  • Support for attaching callback handlers and filters that allow management of various stages of request processing, as well as modifying, redirecting, blocking, and logging requests and responses.
  • gRPC and WebSocket proxying.
  • Pluggable load balancers.
  • Ability to change configuration without restarting.
  • Support for updating application code without dropping connections.
  • Tools for failover load switching.
  • Integration with various monitoring and logging systems (Syslog, Prometheus, Sentry, OpenTelemetry).
  • Support for TLS encryption (uses OpenSSL or BoringSSL).
  • Pre-built Rust packages for creating HTTP proxies, working with network protocols, parsing HTTP headers, traffic accounting and limiting, load balancing, working with a distributed hash table Ketama, maintaining an in-memory cache, and asynchronous processing of timeouts.

Among the changes in the new version:

  • Support for adding filters for additional HTTP/2 headers has been added.
  • The ability to change the buffer size for incoming TCP packets has been added.
  • The function body_bytes_read() has been added.
  • The filter cache_not_modified_filter has been added.
  • The ability to log TLS keys has been added.
  • The callback function purge_response has been added.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster