Trend-Themen
#
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.
Führen Sie niemals Abfragen ohne Timeout aus.
Eine einzelne bösartige Abfrage oder ein Lastspike kann ohne sie zu Störungen oder Ausfallzeiten der App führen. Lassen Sie uns darüber nachdenken, warum.
Betrachten Sie den Fall, in dem eine lang laufende Abfrage versehentlich in unsere App eingeführt wird. Die Datenbank verarbeitet normalerweise nur kurzlebige Abfragen (10 ms oder weniger) und plötzlich haben wir eine neue Abfrage, die 1000 ms pro Ausführung benötigt.
Das wird nicht nur Ressourcen beanspruchen, sondern auch die Anzahl der gleichzeitigen Transaktionen in die Höhe treiben. Wir werden entweder die Verbindungsgrenzen, Transaktionsgrenzen erreichen oder 100 % der CPU / IOPS der Datenbank nutzen.
Betrachten Sie nun dasselbe Szenario, aber wir setzen ein Timeout von 250 ms für jede Transaktion (datenbankseitig), mit exponentieller Backoff-Wiederholungslogik + Jitter (app-seitig). Wir haben nun den Blast-Radius jeder einzelnen Abfrage begrenzt. Lang laufende Abfragen werden beendet, und die Backoff-Logik minimiert das Risiko von „thundering herds“.
Durch die Überwachung dieser Timeouts können wir schnell die problematische Abfrage identifizieren und die Änderung zurückrollen.

Top
Ranking
Favoriten
