本文主要是介绍APM监控-应用程序优化案例:接口被恶意攻击,产生大量调用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
一、问题
Tomcat不停重启,数据库连接池动都不动就满了;
死链接超多。
-
二、监控现象
内存使用、GC情况正常;
数据库连接池用完,总体方法调用次数减少,且耗时大大增加,如下图:
-
三、分析定位原因
内存使用、GC情况正常:
说明Tomcat运行问题不大。
数据库连接池用完,总体方法调用次数减少,且耗时大大增加:
首先可以从方法调用分析,查看哪些方法调用次数比较多,且耗时大。
另外,从日志服务也可以看到项目上传的相关接口调用情况,如下:
根据监控显示,最终于确定为如下接口调用量大增,遭到攻击:
xx/xxx/VerifyMobile2
-
四、解决方法
接口攻击来自微信端,主要是没有相关验证措施,建议增加图形验证。
另外,我们的程序也不够健壮,可以增加限流措施,不至于被外部未知调用拖垮。
-
五、总结
先搞清楚问题,再详尽查看监控现象,大概确定分析方向再去分析,不然这种情况去分析dump或TCP死连接并不是最合适的。
这篇关于APM监控-应用程序优化案例:接口被恶意攻击,产生大量调用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!