Uppdatering av Pingora 0.6, ramverket för att skapa nÀtverksservicer

Cloudflare har slÀppt version 0.6 av Pingora-ramverket, som Àr avsett för utveckling av sÀkra högpresterande nÀtverksservicer i Rust. Proxy som byggts med Pingora har anvÀnts i Cloudflares CDN i över tvÄ Är som alternativ till nginx och hanterar över 40 miljoner förfrÄgningar per sekund. Koden Àr skriven i Rust och publicerad under Apache 2.0-licensen.

Huvudfunktioner i Pingora:

  • Stöd för HTTP/1 och HTTP/2 (HTTP/3 Ă€r planerat) samt möjlighet att skapa tjĂ€nster som anvĂ€nder egna protokoll eller UDP/TCP.
  • Stöd för flerdelad behandling av förfrĂ„gningar i asynkront lĂ€ge.
  • Möjlighet att fĂ€sta callback-handledare och filter som möjliggör styrning av olika steg i förfrĂ„gningshanteringen, samt att Ă€ndra, omdirigera, blockera och logga förfrĂ„gningar och svar.
  • Proxy för gRPC och WebSocket.
  • Anpassningsbara lastbalanserare.
  • Möjlighet att Ă€ndra konfigurationen utan omstart.
  • Stöd för att uppdatera applikationskoden utan att bryta anslutningar.
  • Verktyg för lastvĂ€xling vid fel (failover).
  • Integration med olika övervaknings- och logghanteringssystem (Syslog, Prometheus, Sentry, OpenTelemetry).
  • Stöd för TLS-kryptering (anvĂ€nder OpenSSL, BoringSSL eller Rustls).
  • FĂ€rdiga Rust-paket för att skapa HTTP-proxy, arbeta med nĂ€tverksprotokoll, analysera HTTP-rubriker, övervaka och begrĂ€nsa trafik, balansera last, arbeta med den distribuerade hash-tabellen Ketama, upprĂ€tthĂ„lla cache i minnet samt asynkron hantering av tidsgrĂ€nser.

Bland förÀndringarna i den nya versionen:

  • Vid avslutning av arbetet sĂ€kerstĂ€lls att namnen pĂ„ runtime-komponenterna loggas för att underlĂ€tta diagnostisering av problem orsakade av avsaknad av runtime-komponenter som leder till förseningar vid avslutning.
  • Övervakning av exekveringsfaser har inkluderats. servern, information om vilka kan vara anvĂ€ndbar för övervakning eller för att sĂ€kerstĂ€lla hög tillgĂ€nglighet. Vid Ă€ndring av exekveringsfas genereras ett meddelande om ExecutionPhase som kan fĂ„ngas via API-servern Server::watch_execution_phase.
  • Det Ă€r tillĂ„tet att placera komprimerade ordböcker i minnet.
  • I implementationen av http-servern och http-proxyn har direktiven HttpServerOptions och H2Options lagts till.
  • Skydd mot MadeYouReset-attacker har implementerats, vilket möjliggör denial-of-service genom manipulation av kontrollramar i HTTP/2.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster