Popularne tematy
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Nigdy nie uruchamiaj zapytań bez limitu czasu.
Pojedyncze nieprawidłowe zapytanie lub skok obciążenia mogą prowadzić do zastoju lub przestoju aplikacji bez nich. Zastanówmy się, dlaczego.
Rozważmy przypadek, w którym do naszej aplikacji przypadkowo wprowadzone zostaje długoterminowe zapytanie. Baza danych zazwyczaj przetwarza tylko krótkotrwałe zapytania (10 ms lub mniej), a nagle mamy nowe zapytanie, które zajmuje 1000 ms na wykonanie.
Nie tylko zajmie to zasoby, ale także zwiększy liczbę jednoczesnych transakcji. Możemy osiągnąć limity połączeń, limity transakcji lub wykorzystać 100% CPU / IOPS bazy danych.
Teraz rozważmy ten sam scenariusz, ale nakładamy limit czasu 250 ms na każdą transakcję (po stronie bazy danych), z logiką ponownego próbowania z wykładniczym opóźnieniem + jitter (po stronie aplikacji). Ograniczyliśmy teraz zasięg wpływu pojedynczego zapytania. Długoterminowe zapytania zostaną zakończone, a logika opóźnienia minimalizuje ryzyko tzw. „thundering herds”.
Monitorując te limity czasu, możemy szybko zidentyfikować problematyczne zapytanie i cofnąć zmianę.

Najlepsze
Ranking
Ulubione
