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

A Cloudflare céget bejelentette a Pingora 0.4 keretrendszer megjelenését, amely a biztonságos, nagy teljesítményű hálózati szolgáltatások fejlesztésére szolgál Rust nyelven. A Pingora segítségével készült proxy-t több mint két éve használják a Cloudflare tartalomszolgáltató hálózatában nginx helyett, és több mint 40 millió kérést kezel másodpercenként. A kód Rust nyelven íródott, és Apache 2.0 licenc alatt kerül nyilvánosságra.

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:

  • Kezdeti támogatás a Rustls kriptográfiai könyvtár számára, amely az aws-lc-rs és a ring könyvtárakon alapuló kriptólelőállítókat használ.
  • Kísérleti támogatás Windows platformhoz.
  • Dummy TLS üzemmód, amely alkalmazható olyan helyzetekben, amikor nem lehet a valódi TLS megoldást használni.
  • A gRPC-web modul támogatása, amely a gRPC-web kliens kéréseket a gRPC kérésekké alakítja. szerverhez gRPC.
  • Lehetővé teszi az H2C (HTTP/2 tiszta TCP-n, titkosítás nélkül) és HTTP/1 kapcsolatok kezelését ugyanazon hálózati porton.
  • Lehetővé teszi a connect() funkció saját megvalósításainak csatlakoztatását a hálózati kapcsolat működési módjának megváltoztatásához, például további socket opciók beállításához vagy hibák szimulálásához tesztelés során.
  • Lehetővé teszi az információs válaszok figyelmen kívül hagyását az átirányítás során, mint például az "Expect: 100-continue" fejlécű válaszok.
  • Gzip módszerrel tömörített válaszok kicsomagolásának támogatása.
  • A backend állapotának nyomon követése a megfigyelés céljából.
  • Helyi portok tartományához kötés lehetősége.

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