如果发现某个操作耗时比较长,一般的解决框架如下:
一般都是发生在后台:
第一步 把整个流程从接收前端参数,到输出结果,按照业务逻辑划分为几个环节。
第二步 记录每个环节的耗时:
Calendar dateTime = Calendar.getInstance(); Date begin = dateTime.getTime(); ----环节一-- dateTime = Calendar.getInstance(); Date end = dateTime.getTime(); CommonsUtil.debugLog("==----环节一 耗时:[" + String.valueOf(end.getTime() - begin.getTime()) + "]毫秒 "); 类似写法获取环节二 环节三 ...
第三步 分析环节耗时,从最耗时的地方入手。
第四步 必要时,将环节拆分成子环节 重复上面操作二
另CommonsUtil.debugLog只有在系统处于调试状态时才输出结果:
nacos中配置对应微服务
qlm:
debug: true