Populární témata
#
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.
Nikdy nespouštějte dotazy bez timeoutu.
Jeden neautorizovaný dotaz nebo náskok načtení může bez nich vést k zaseknutím nebo výpadku aplikace. Pojďme si to ujasnit.
Zvažme případ, kdy se do naší aplikace omylem dostane dlouhodobý dotaz. Databáze obvykle zpracovává pouze krátkodobé dotazy (10ms nebo méně) a najednou máme nový dotaz, který trvá 1000ms na jedno vykonání.
To nejenže zabere zdroje, ale také výrazně zvýší počet současných transakcí. Buď dosáhneme limitů připojení, limitů TXN, nebo využijeme 100 % procesoru databáze / IOPS.
Nyní uvažujte stejný scénář, ale na každou transakci (na straně databáze) ukládáme timeout 250ms, s exponenciálním zpětným pokusem + jitterem (na straně aplikace). Nyní jsme omezili dosah výbuchu u jakéhokoli jednotlivého dotazu. Dlouhodobé dotazy budou zrušeny a logika ustupování minimalizuje riziko hromadného hromadění.
Sledováním těchto časových limitů můžeme rychle identifikovat problematický dotaz a vrátit změnu zpět.

Top
Hodnocení
Oblíbené
