Cloudflare je objavio izvorni kod Pingore, okvira napisanog u Rustu za kreiranje mrežnih usluga

Pingora

Pingora banner

Prije nekoliko dana Cloudflare predstavljen, putem objave na blogu, svoju odluku da objavi izvorni kod svog okvira "Pingora", posebno dizajniran za razviti sigurne mrežne usluge visokih performansi, kao i programabilni mrežni sistemi na jeziku Rust.

Ovaj okvir pruža gotove Rust pakete koji olakšavaju kreiranje HTTP proxyja, rad sa mrežnim protokolima, raščlanjivanje HTTP zaglavlja, obračunavanje i ograničavanje saobraćaja, balansiranje opterećenja, upravljanje Ketama distribuiranom hash tabelom, održavanje keš memorije u RAM-u i asinkrona obrada vremenskih ograničenja. Pored podrške za HTTP, Pingora dozvoljava kreiranje servisa koristeći sopstvene protokole ili UDP/TCP.

Šta je Pingora?

Pingora je asinhroni višenitni Rust okvir dizajniran da izgradi HTTP proxy usluge sigurno i efikasno.. Od svog objavljivanja, Pingora je opsežno testirana i korišćena na sistemima sa visokim opterećenjem, kao proxy koji se koristi na Cloudflare mreži za isporuku sadržaja, obrađujući preko 40 miliona zahteva u sekundi više od godinu dana.

Cloudflare spominje da je sigurnost ključni prioritet projekta, zbog čega je Rust jezik odabran da smanji vjerovatnoću grešaka u memoriji. Pored toga, pažnja je posvećena efikasnosti, performansama i proširivosti, omogućavajući integraciju filtera i rukovalaca povratnim pozivima za kontrolu različitih faza obrade zahteva, kao i za modifikovanje, preusmeravanje, blokiranje i evidenciju zahteva i odgovora.

Pingora je biblioteka i skup alata, a ne izvršna binarna datoteka. Drugim riječima, Pingora je motor koji pokreće automobil, a ne sam automobil. Iako je Pingora spremna za proizvodnju za industrijsku upotrebu, razumijemo da mnogi ljudi žele web uslugu po principu ključ u ruke, s uključenim baterijama i s opcijama konfiguracije bez koda ili s niskim kodom. Izgradnja te aplikacije na vrhu Pingore bit će fokus naše suradnje s ISRG-om kako bismo proširili Pingorin doseg. Ostanite sa nama za buduće najave o tom projektu.

Među ključne prednosti Pingore, izdvajaju se:

  1. Sigurnost memorije: Pingora nudi alternativu bezbedniju za memoriju u poređenju sa uslugama napisanim u C/C++. Ovo rezultira manjom vjerovatnoćom grešaka u kodiranju koje bi mogle ugroziti sigurnost sistema.
  2. Optimizirane performanse: Zahvaljujući svojoj višenitnoj arhitekturi, Pingora je brza i efikasna, štedeći CPU i memorijske resurse. Ovo je posebno korisno za radna opterećenja koja su osjetljiva na performanse i troškove.
  3. Napredno prilagođavanje: API-ji koje pruža Pingora su vrlo programabilni, omogućavajući opsežnu prilagodbu za kreiranje prilagođenih i naprednih gateway-a ili balansera opterećenja.

Pingora nudi nekoliko ključnih karakteristika, kao što je višenitna obrada zahtjeva u asinhronom načinu rada, podrška za HTTP/1 i HTTP/2 (sa planovima za HTTP/3), gRPC i WebSocket proxy, priključni balanseri opterećenja, promjena konfiguracije bez ponovnog pokretanja, ažuriranje koda bez prekida veze, strategije prebacivanja opterećenja u slučaju kvara (failover), integraciju sa sistemima za praćenje i evidentiranje (kao što su Syslog, Prometheus, Sentry, OpenTelemetry) i podršku za TLS enkripciju kroz OpenSSL i BoringSSL C biblioteke.

Pingora istaknute karakteristike

  • Podrška za HTTP/1 i HTTP/2 proxy, gRPC i websocket.
  • Prilagodljive strategije balansiranja opterećenja i prelaska na greške.
  • Integracija sa OpenSSL i BoringSSL bibliotekama za usklađenost i sigurnost.
  • Filteri i povratni pozivi za prilagođavanje i obradu zahtjeva.
  • Graciozno ponovno pokretanje bez prekida rada za besprijekorna ažuriranja.
  • Integracija sa alatima za posmatranje kao što su Syslog, Prometheus, Sentry, OpenTelemetry, između ostalih.

Konačno, Cloudflare spominje da sarađuje s Prossimo projektom istraživačke grupe Internet Security Group (ISRG) kako bi unaprijedio usvajanje Pingore u kritičnoj internet infrastrukturi, doprinoseći tako sigurnijem i pouzdanijem Internetu za sve.

Naps zainteresovani da saznaju više o tome, trebali biste znati da je kod napisan u Rust i objavljeno pod licencom Apache 2.0, možete pogledati i publikaciju Cloudflare Na sledećem linku.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.