Konrad Kowalski (rootsher)Principal Platform & Reliability Architect101001110100011010000111011000111010101110011011

Latency

wpisy (12)

  1. Warstwy HTTP w przeglądarce: od fetch() do QUIC9/9

    Od fetch() do pierwszego bajtu

    Cały lifecycle w jednym miejscu: polityki przeglądarki, cache, connection, wire format, headers i body. Dopiero z tym modelem Network panel odpowiada na…

  2. CPU w Kubernetes od kernela w górę12/12

    Anatomia problemu CPU: od zaniżonego requestu do p99 latency

    Jeden incydent od początku do końca: request 500m, brak limitu, brak throttlingu, a p99 rośnie z 35 do 180 ms. Cała ścieżka mechanizmu.

  3. CPU w Kubernetes od kernela w górę11/12

    Noisy neighbor i CPU overcommit: kiedy jeden Pod psuje drugi

    Overcommit działa, dopóki bursty nie są skorelowane. Zaniżony request to nie tylko placement - to także słabsza pozycja przy contention.

  4. Warstwy HTTP w przeglądarce: od fetch() do QUIC8/9

    HTTP/3 i QUIC: ten sam HTTP, inny transport

    QUIC usuwa transportowy head-of-line blocking i taniej zestawia sesję, ale nie naprawia zależności, które frontend tworzy własnym kodem.

  5. Testowanie przez warstwy: od kodu do infrastruktury8/9

    Performance tests i load tests: zachowanie pod ruchem

    Performance test mierzy zachowanie systemu w czasie, load test sprawdza spodziewane obciążenie, a stress test szuka granicy pęknięcia.

  6. CPU w Kubernetes od kernela w górę5/12

    CPU Contention: kiedy proces chce CPU, ale go nie dostaje

    Bez żadnego limitu proces może stać i czekać. Wystarczy, że runnable demand przekroczy dostępną capacity - i to widać dopiero w latency.

  7. Deployment strategies: po co w ogóle są3/6

    Canary deployment: nowa wersja dostaje część ruchu

    Canary ogranicza blast radius przez mały procent prawdziwego ruchu. Bez metryk jest tylko wolniejszym rolloutem.

  8. Realtime w przeglądarce: od pollingu do WebTransport7/7

    Polling, Streaming, SSE, WebSocket czy WebTransport?

    Wybór wynika z modelu ruchu: świeżości danych, kierunku, częstotliwości, kolejności i niezawodności. Najprostszy poprawny mechanizm zwykle wygrywa.

  9. 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.

  10. Realtime w przeglądarce: od pollingu do WebTransport2/7

    Long Polling: kiedy serwer opóźnia odpowiedź

    Serwer nie odpowiada, dopóki nie ma czego wysłać. Powstaje ciąg długich requestów, w którym timeout i kursor są częścią protokołu.