Blog - Konrad Kowalski (rootsher)
wpisy (112)
- Realtime w przeglądarce: od pollingu do WebTransport6/7
WebTransport: streams i datagramy dla realtime nad HTTP/3
HTTP/3 i QUIC dają jednej sesji wiele niezależnych streamów oraz datagramy. Nie każde dane muszą dotrzeć niezawodnie i w kolejności.
- Testowanie przez warstwy: od kodu do infrastruktury3/9
Integration tests: prawdziwa granica systemu
Integration test sprawdza, czy kod dogaduje się z prawdziwą zależnością albo prawdziwą granicą. To test miejsca, którego unit test z definicji nie widzi.
Polityki na klastrze: po co Kyverno i CEL
Polityki na klastrze powstały dlatego, że RBAC mówi, kto może utworzyć zasób, ale nie odpowiada dobrze na pytanie, czy ten konkretny YAML jest bezpieczny.
- Frontend Rendering: od server-side pages do hybrydowego renderowania15/17
Resumability: zamiast hydratować, wznów wykonanie
Serwer zapisuje dość informacji, żeby klient nie musiał odtwarzać drzewa komponentów. Kod ładuje się dlatego, że wykonanie stało się potrzebne.
Wprowadzenie do service mesh: po co Istio i Linkerd
Service mesh powstał dlatego, że w systemie mikroserwisów problemy z ruchem, tożsamością i obserwowalnością zaczęły powtarzać się w każdej usłudze.
- Realtime w przeglądarce: od pollingu do WebTransport5/7
WebSockets: trwały kanał komunikacji w obu kierunkach
Po handshake nie ma już requestów i odpowiedzi, tylko frames. Trwałe połączenie jest stanem, który dotyka load balancera, deployu i fan-outu między instancjami.
- Gateway API bez magii4/4
Migracja z ingress-nginx do Gateway API
Migracja z ingress-nginx nie jest mechaniczną translacją YAML-a. Najpierw trzeba oddzielić kontrakt aplikacji od zachowań konkretnego kontrolera.
- Testowanie przez warstwy: od kodu do infrastruktury2/9
Component tests i snapshot tests: mały fragment aplikacji
Component test sprawdza mały fragment aplikacji jako zachowanie, a snapshot test zapisuje jego output. Oba są blisko kodu, ale odpowiadają na inne pytania.
- Realtime w przeglądarce: od pollingu do WebTransport4/7
Server-Sent Events: protokół zdarzeń nad HTTP streamingiem
Standardowy format zdarzeń i reconnect nad strumieniem HTTP. Last-Event-ID daje wznowienie, ale trwałości eventów w systemie już nie załatwia.
- Gateway API bez magii3/4
GatewayClass: kontrakt z implementacją
GatewayClass nie jest nazwą środowiska. To punkt, w którym Kubernetes Gateway API spotyka się z konkretnym kontrolerem.