Cloudflare wydało pierwszą publiczną wersję Pingory v0.1.0

Cloudflare wydało pierwszą publiczną wersję Pingory v0.1.0

5 kwietnia 2024 Cloudflare zaprezentowało pierwsze publiczne wydanie projektu open source Pingora v0.1.0 (już v0.1.1). Jest to asynchroniczna, wielowątkowa platforma w Rust, która pomaga tworzyć usługi proxy HTTP. Projekt służy do tworzenia usług zapewniających znaczną część ruchu do Cloudflare (zamiast korzystania z Nginx). Kod źródłowy Pingory jest publikowany na GitHubie na licencji Apache 2.0.

Pingora udostępnia biblioteki i API do tworzenia usług poprzez HTTP/1 i HTTP/2, TLS lub po prostu TCP/UDP. Jako serwer proxy obsługuje kompleksowe proxy HTTP/1 i HTTP/2, gRPC i WebSocket. W planach jest obsługa HTTP/3. Pingora zawiera również konfigurowalne strategie równoważenia obciążenia i przełączania awaryjnego. Aby zapewnić zgodność i bezpieczeństwo, obsługuje zarówno powszechnie używane biblioteki OpenSSL, jak i BoringSSL, które są zgodne z FIPS (amerykańskie federalne standardy przetwarzania informacji) i szyfrowaniem post-kwantowym.

Oprócz tych funkcji Pingora udostępnia filtry i wywołania zwrotne, które pozwalają użytkownikom w pełni dostosować sposób, w jaki usługa powinna przetwarzać, przekształcać i przekazywać dalej żądania.

W trybie produkcyjnym Pingora zapewnia płynny restart bez przestojów w celu aktualizacji bez utraty przychodzących żądań. Syslog, Prometheus, Sentry, OpenTelemetry i inne niezbędne narzędzia monitorujące płynnie integrują się z Pingorą.

Funkcje Pingory: wykorzystanie Async Rust, obsługa proxy HTTP 1/2 od końca do końca, TLS przez OpenSSL lub BoringSSL, proxy gRPC i websocket, Graceful Reload, konfigurowalne strategie równoważenia obciążenia i przełączania awaryjnego, obsługa różnych narzędzi monitorujących.

Pingora v0.1.1 naprawia wcześniej wykryte błędy, poprawia wydajność algorytmu pingora-ketama, dodaje więcej benchmarków i testów TinyUFO do czyszczenia pamięci podręcznej pingora, ogranicza rozmiar bufora dla dzienników błędów InvalidHTTPHeader, a także poprawia literówki i wprowadza niezbędne poprawki w komentarzach i projekt dokumentacji.

Źródło: linux.org.ru

Dodaj komentarz