去哪儿网《数据库稳定性治理实践:如何实现 99.95%提升到99.99%?》

如何获得讲师PPT:

扫码关注公众号,后台回复Q109即可获得讲师PPT哟~

还能一键订阅后续精彩活动内容~

走出故障迷局的三重奏:逃生、复盘和推演

Q&A环节答疑:

1、风险梳理的评估模型能否请老师分享一下模型的具体构建过程,然后是使用效果,比如我怎么用这个模型来预测风险呢?

我们并没有采用特定的模型来处理数据库问题,而是基于过去出现的故障情况进行分析。通过回顾近三年内导致数据库故障的原因,以及当时的具体情况和处理过程,我们试图找出存在的问题,并思考如何在处理过程中进行更快或更有效的操作。这些分析都是基于历史数据进行的。

在日常工作中,我们经常会收到业务方面的反馈,涉及数据库的问题,如响应时间延长或分片异常增多等。在定位并解决这些问题时,我们不仅要关注当前集群的情况,还要推测并排查其他机器人是否存在类似问题。

值得注意的是,有些问题已经导致了线上故障,而有些虽然未导致故障但已出现异常。这些问题可能是通过业务反馈或我们自己的观察发现的。考虑到可能存在其他类似场景,我们认为有必要进行普遍排查,并考虑是否需要进行专题整理。当然,最重要的是我们能够具备及时发现问题并纳入正常运营的能力。

2、这个标准是怎么确定的?以及让业务方认可

在设置数据库连接数时,我们需要综合考虑多个因素。首先,我们要根据数据库自身的性能和承载能力来设定一个合适的初始值。例如,我们日常保持的连接数低位值可能是3000,这个值对于数据库来说是完全可以承载的。然而,在实际业务中,随着机器数量的增加,连接数也可能迅速增长。因此,我们需要根据业务线的实际情况,与业务团队进行沟通,共同确定合适的连接数值。

在确定连接数值时,我们还需要考虑到一些异常情况。比如,如果突然进行大规模的扩容,连接数可能会迅速达到上限,导致数据库不可用。因此,我们不能仅仅依赖一个固定的数值来设定连接数,而是要根据实际情况进行动态调整。

此外,我们还需要关注单个应用所配置的连接数。如果单个应用配置的连接数过大,即使机器数量不多,也可能导致总连接数迅速增加。因此,我们需要对应用的连接数进行合理配置,避免资源浪费和数据库性能下降。

最后,通过设定合理的连接数标准,并与业务团队达成共识,我们可以规避一些潜在的问题。当然,在设定标准时,我们需要充分解释背后的原因和风险,以确保大家能够理解并遵守这些标准。只要大家按照标准执行,就能够有效保障数据库的稳定性和可用性。

3、会不会流控呢? 长事务的SQL看不到怎么搞的呢? 

流控是我们在使用PC时经常遇到的问题。导致流控的原因多种多样,从运维的角度来看,大部分情况可能是由于写入量过大或某个节点性能出现问题导致堵塞,进而使得正常请求无法提交或发生堵塞。不过,有观点提到长时错误(circle)不一定会导致流控,并且关于流控的常数定义可能有些模糊。至于尝试连接,主要是看请求能否成功连接。我们可以在界面上查看这些常数,但尚不清楚这些常数是否与大量的写入操作有关。这两个问题似乎是一起提出的,目前还不清楚它们之间是否有直接关联。

如果分开来看,流控确实是一个普遍存在的问题。无论是性能问题还是请求写入过大,只要系统处理不过来,都可能发生流控。 在尝试解决问题时,我们通常通过特定机制来检测这类尝试,并进行相应的处理。至于如何具体操作,比如查看数据库或系统表中的数据,然后进行展示和处理,这需要根据具体情况来定。如果某些信息无法查看,可能是因为还没有到达相应的处理阶段或数据还未更新。总的来说,我们需要综合考虑各种因素来有效地处理流控问题。

本文来自投稿,不代表TakinTalks稳定性技术交流平台立场,如若转载,请联系原作者。

(0)
上一篇 2024年4月3日 下午5:30
下一篇 2024年4月15日 下午4:16

相关推荐

发表评论

登录后才能评论