单机多实例报警处理反思
处理过程的总结:
a、在接到前端反馈以及报警的时候,首先使用top查看哪个端口的访问压力最大
反思:此次报警的端口是4117,压力特别大确实3347,这个再后面看的时候有点晚,而是先将其他压力相对较小的实例下线
b、在处理的过程中,应该联系业务端,看看业务端能给哪些支持(例如,拒流量、降低服务等级以及或者只保留重要流量等)
反思:此次处理过程,业务端暂停了流量,给后端数据库缓冲的时间,在数据库添加新的机器后,服务较快恢复
c、处理过程中,尽管在show processlist中看到很对的连接,但是在使用use db的时候出现夯住问题
反思:原因在于表数目太多(3万个),use db需要加载很多表的一些元信息。由于没有办法看到表结构,对于访问的SQL无法优化。
在后面才想到show create table db.xxx的方式,就可以避过这个问题。
d、在处理的过程中,没有记录全所有的信息
反思:在登录服务器的时候,尽将show processlist记录到文件中。没有保留top、iostat以及网卡等信息。
而现有监控系统又看不全当时的信息,不利用后来问题的分析以及总结