开发指南049-优化性能

如果发现某个操作耗时比较长,一般的解决框架如下:

一般都是发生在后台:

第一步 把整个流程从接收前端参数,到输出结果,按照业务逻辑划分为几个环节。

第二步 记录每个环节的耗时:

java 复制代码
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

相关推荐
rgeshfgreh9 分钟前
Spring Bean管理机制深度解析
java·spring boot·spring
ling-4510 分钟前
ssm-day07 springboot3、Mybatis-Plus、springboot实战
java·spring boot·后端
少许极端15 分钟前
算法奇妙屋(二十三)-完全背包问题(动态规划)
java·算法·动态规划·完全背包
a程序小傲18 分钟前
得物Java面试被问:边缘计算的数据同步和计算卸载
java·开发语言·数据库·后端·面试·golang·边缘计算
你不是我我21 分钟前
【Java 开发日记】我们来说一下无锁队列 Disruptor 的原理
java·开发语言
强子感冒了21 分钟前
Java IO流学习笔记:从字节流到字符流
java·笔记·学习
期待のcode21 分钟前
Java虚拟机堆
java·开发语言·jvm
callJJ23 分钟前
WebSocket 两种实现方式对比与入门
java·python·websocket·网络协议·stomp
一条咸鱼_SaltyFish23 分钟前
Spring Cloud Gateway鉴权空指针惊魂:HandlerMethod为null的深度排查
java·开发语言·人工智能·微服务·云原生·架构
i***132428 分钟前
SpringCloud实战十三:Gateway之 Spring Cloud Gateway 动态路由
java·spring cloud·gateway