
Cloudflare je 5. aprila 2024 predstavil prvo javno izdajo odprtokodnega projekta Pingora v0.1.0 (že v0.1.1). Je asinhrono večnitno ogrodje v Rustu, ki pomaga ustvarjati storitve proxy HTTP. Projekt se uporablja za ustvarjanje storitev, ki zagotavljajo pomemben del prometa v Cloudflare (namesto uporabe Nginx). Izvorna koda Pingora je objavljena na GitHubu pod licenco Apache 2.0.
Pingora ponuja knjižnice in API-je za gradnjo storitev prek HTTP/1 in HTTP/2, TLS ali preprosto TCP/UDP. Kot posrednikstrežnika Podpira celovito posredovanje HTTP/1 in HTTP/2, gRPC in WebSocket. Načrtovana je podpora za HTTP/3. Pingora vključuje tudi nastavljive strategije uravnoteženja obremenitve in preklopa ob okvari. Za zagotavljanje skladnosti in varnosti podpira tako široko uporabljene knjižnice OpenSSL kot BoringSSL, ki so skladne s standardi FIPS (Federal Information Processing Standards) in postkvantno šifriranje.
Poleg teh funkcij Pingora ponuja filtre in povratne klice, ki uporabnikom omogočajo, da popolnoma prilagodijo, kako naj storitev obdela, preoblikuje in posreduje zahteve.
V produkcijskem načinu Pingora zagotavlja gladek ponovni zagon brez izpadov, da se posodobi brez izgube morebitnih dohodnih zahtev. Syslog, Prometheus, Sentry, OpenTelemetry in druga bistvena nadzorna orodja se brezhibno integrirajo s Pingora.
Funkcije Pingora: uporaba Async Rust, podpora za HTTP 1/2 end to end proxy, TLS over OpenSSL ali BoringSSL, gRPC in websocket proxy, Graceful reload, prilagodljivo uravnoteženje obremenitve in strategije preklopa, podpora za različna orodja za nadzor.
Pingora v0.1.1 popravlja predhodno odkrite hrošče, izboljšuje delovanje algoritma pingora-ketama, dodaja več primerjalnih testov TinyUFO in testov za čiščenje predpomnilnika pingora, omejuje velikost medpomnilnika za dnevnike napak InvalidHTTPHeader ter popravlja tipkarske napake in naredi potrebne popravke v komentarjih in projekt dokumentacije.
Vir: linux.org.ru
