Izdaja Pingora 0.6, okvira za ustvarjanje omrežnih storitev.

Podjetje Cloudflare je objavilo različico ogrodja Pingora 0.6, namenjenega razvoju zaščitenih visoko zmogljivih omrežnih storitev v jeziku Rust. Proxy, zgrajen s Pingoro, se že več kot dve leti 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 Pingora:

  • Podpora za HTTP/1 in HTTP/2 (v načrtu je HTTP/3), pa tudi možnost ustvarjanja storitev, ki uporabljajo svoje protokole ali UDP/TCP.
  • Podpora za obdelavo zahtevkov v večnitnem asinhronem načinu.
  • Možnost pripenjanja obdelovalcev callback in filtrov, ki omogočajo upravljanje različnih faz obdelave zahtevka, pa tudi spreminjanje, preusmerjanje, blokiranje in evidentiranje zahtevkov in 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, BoringSSL ali Rustls).
  • 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.

Među promenama u novoj verziji:

  • Ob končanju dela je zagotovljen zapis imen komponent runtime v dnevniku za poenostavitev diagnosticiranja težav, ki jih povzroča odsotnost komponent runtime in povzročajo zamude med končanim delom.
  • Spremljanje faz izvajanja je vključeno strežnika, informacije o katerih so lahko koristne za spremljanje ali zagotavljanje odpornosti sistema. Ob spremembi faze izvajanja se ustvari sporočilo ExecutionPhase, ki ga je mogoče prestreči preko API Server::watch_execution_phase.
  • Dovoljeno je shranjevanje stisnjenih besedilnikov v pomnilniku.
  • V implementaciji http strežnika in http proxy so dodane direktive HttpServerOptions in H2Options.
  • Izvedena je zaščita pred napadom MadeYouReset, ki omogoča povzročitev prekinitve storitev s manipulacijo nadzornimi okviri HTTP/2.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster