热门话题
#
Bonk 生态迷因币展现强韧势头
#
有消息称 Pump.fun 计划 40 亿估值发币,引发市场猜测
#
Solana 新代币发射平台 Boop.Fun 风头正劲
永远不要在没有超时的情况下运行查询。
一个单独的恶意查询或负载峰值可能会导致停滞或应用程序停机。让我们思考一下原因。
考虑一个长时间运行的查询不小心被引入到我们的应用程序中。数据库通常只处理短时间的查询(10毫秒或更少),而突然间我们有了一个每次执行需要1000毫秒的新查询。
这不仅会占用资源,还会增加同时事务的数量。我们将会达到连接限制、事务限制,或者使用100%的数据库CPU / IOPS。
现在考虑同样的场景,但我们在每个事务上(数据库端)设置了250毫秒的超时,并在应用程序端使用指数退避重试逻辑 + 抖动。我们现在限制了任何单个查询的影响范围。长时间运行的查询将被终止,而退避逻辑最小化了雷鸣般的风险。
通过监控这些超时,我们可以快速识别出有问题的查询并回滚更改。

热门
排行
收藏
