技术社群的这篇文章《第50问:从连接判断应用访问数据库的异常行为》给我们讲解了C/C++应用如果出现数据库连接异常,应该如何判断,整个排查的路径比较经典,还是非常值得借鉴和学习的。
问题:访问数据库的连接有异常流量,如何判断是应用哪个逻辑导致了异常行为?
实验过程:
先起锅烧一个数据库实例,
我们这次用mysqlslap作为应用,

假设在MySQL中,我们认为这根连接有异常流量,

通过ss找到这根连接在mysqlslap中的句柄号,

我们通过strace,输出mysqlslap使用这根连接的堆栈,

再挑一个句柄3的堆栈,是mysqlslap在做create database的动作,

找到句柄4的对应操作,

句柄3对应的连接的任务是create/drop database ,进行测试前后的构建和清理工作。
句柄4对应的连接的任务是run task ,对数据库施加任务压力,我们从数据库上看到的异常流量,就是来自于这个逻辑。
如果您认为这篇文章有些帮助,还请不吝点下文章末尾的"点赞"和"在看",或者直接转发朋友圈,

微信公众号:@bisal的个人杂货铺 腾讯云开发者社区:@bisal的个人杂货铺 头条号:@bisal的个人杂货铺 CSDN:@bisal ITPub:@bisal 墨天轮:@bisal 51CTO:@bisal 小红书:@bisal 抖音:@bisal
文章转载自bisal的个人杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





