作为后端开发经常会碰到接口反应慢的的问题,结合自己的工作经验在这里我对该问题的定位及处理方法进行一些总结
1 定位接口
有时候我们点击一个按钮可能会触发很多个接口,这时如果反应慢我们那就要定位一下是具体那个接口反应慢,如图当我点击查询接口时他一直在转圈,很多人自然而然的也以为是查询接口出了问题。
但是当我们点看network查看时会发现,其实一直在请求的是另外一个接口。整个逻辑是:当我们请求查询是首先会去判断这个人的权限,如果有权限再返回数据。而权限接口一直请求慢导致我们看到查询时一直在转圈
2 定位环节
一个接口请求是要经过如下环节的
通过图我们那可以看到请求缓慢出问题的可是是网关转发缓慢,应用服务,数据库查询缓慢
网关转发缓慢
当网关转发缓慢主要特征是所有请求突然变慢,这是我们要去查看网关监控,如下图用过网关耗时我们可以清楚地知道网关转发用了多久时间。
应用服务处理慢
判断服务是否处理缓慢主要是看应用监控JVM,线程,GC相关信息
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/ac293cf1244af8a0992d78a06ea3197f.png
数据库查询缓慢
我们查看druid监控