Podjetje Cloudflare je objavilo prvo različico okvirja Pingora, namenjenega razvoju zaščitenih visokozmogljivih omrežnih storitev v jeziku Rust. Pingora proxy, zgrajen s pomočjo tega okvirja, se že približno eno leto uporablja v omrežju za dostavo vsebine Cloudflare namesto nginx in obdeluje več kot 40 milijonov zahtevkov na sekundo. Koda je napisana v jeziku Rust in objavljena pod licenco Apache 2.0.
Glavne značilnosti:
- Podpora za HTTP/1 in HTTP/2 (v načrtu je HTTP/3), pa tudi možnosti za ustvarjanje storitev, ki uporabljajo svoje protokole ali UDP/TCP.
- Možnost večpredprocesne obdelave zahtevkov v asinhronem načinu.
- Podpora za pritrjevanje callback obdelovalcev in filtrirnih mehanizmov, ki omogočajo upravljanje z različnimi fazami obdelave zahtevkov, pa tudi spreminjanje, preusmerjanje, blokiranje in beleženje zahtevkov ter odgovorov.
- Proxiranje gRPC in WebSocket.
- Priklopni uravnavači obremenitve.
- Možnost spreminjanja konfiguracije brez ponovnega zagona.
- Podpora za posodobitev kode aplikacije brez prekinitev povezav.
- Orodja za preklapljanje obremenitve v primeru okvare (failover).
- Integracija z različnimi sistemi za spremljanje in evidentiranje (Syslog, Prometheus, Sentry, OpenTelemetry).
- Podpora za TLS šifriranje (uporablja se OpenSSL ali BoringSSL).
- Kontejnerji Rust za ustvarjanje HTTP-proxy, delo z omrežnimi protokoli, razčlenjevanje HTTP-headerjev, spremljanje in omejevanje prometa, uravnoteženje obremenitve, delo s porazdeljeno hash-tabelo Ketama, vzdrževanje predpomnilnika v pomnilniku in asinhrono obdelavo časovnih iztekanj.
Izvor: opennet.ru
