A Pingora 0.6 kiadása, keretrendszer hálózati szolgáltatások létrehozásához

A Cloudflare közzétette a Pingora 0.6 keretrendszer kiadását, amelyet védett, nagy teljesítményű hálózati szolgáltatások fejlesztésére terveztek Rust nyelven. A Pingora segítségével épített proxy már több mint két éve használatban van a Cloudflare tartalomelosztó hálózatában az nginx helyett, és több mint 40 millió kérést kezel másodpercenként. A kód Rust nyelven készült, és az Apache 2.0 licenc alatt van publikálva.

A Pingora főbb lehetőségei:

  • HTTP/1 és HTTP/2 támogatása (HTTP/3 bevezetése tervezett), valamint lehetőség saját protokollok vagy UDP/TCP alapú szolgáltatások létrehozására.
  • Több szálú kérések aszinkron feldolgozásának támogatása.
  • Callback-kezelők és szűrők csatolásának lehetősége, amelyek lehetővé teszik a kérések feldolgozásának különböző szakaszainak kezelését, valamint a kérések és válaszok módosítását, átirányítását, blokkolását és naplózását.
  • gRPC és WebSocket proxyzás.
  • Bővíthető terheléselosztók.
  • Konfiguráció változtatásának lehetősége újraindítás nélkül.
  • Alkalmazáskód frissítésének támogatása a kapcsolatok megszakítása nélkül.
  • Eszközök a hibás működés esetén történő terhelés váltásra (failover).
  • Integráció különböző monitoring és naplózási rendszerekkel (Syslog, Prometheus, Sentry, OpenTelemetry).
  • TLS titkosítás támogatása (OpenSSL, BoringSSL vagy Rustls alkalmazásával).
  • Kész Rust csomagok HTTP-proxy létrehozására, hálózati protokollok kezelésére, HTTP-fejlécek elemzésére, forgalom nyilvántartására és korlátozására, terheléselosztásra, elosztott ketamahash-táblák működtetésére, cache fenntartására a memóriában és aszinkron időtúllépések kezelésére.

Az új verzióban található változások:

  • A leállás során a runtime összetevők neveinek naplózása biztosítva van, a runtime összetevők hiányából eredő problémák diagnosztikájának egyszerűsítése érdekében, amelyek késedelmet okozhatnak a leállás során.
  • Fázisfigyelés engedélyezve. a szerver, amely információ hasznos lehet a megfigyeléshez vagy a redundancia biztosításához. A végrehajtási fázis megváltoztatásakor egy ExecutionPhase üzenet generálódik, amelyet az API Server::watch_execution_phase-n keresztül lehet elfogni.
  • Engedélyezve van a tömörített szótárak memóriában való elhelyezése.
  • A http-szerver és http-proxy megvalósításába bevezetésre kerültek az HttpServerOptions és H2Options direktívák.
  • Megvalósították a MadeYouReset támadás ellen védelmet, amely lehetővé teszi a szolgáltatásmegtagadási támadást az HTTP/2 vezérlő keretek manipulálásával.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster