优化之前先测量,否则你优化的可能是错觉。我想反驳,但发现他说得对。我在心里给这次的优化目标定了个数,降低一半。果然现实比段子更精彩
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
所谓性能优化,就是在不重写代码的前提下假装自己在重写代码。我想反驳,但发现他说得对。我把这个日志的同步写改成了异步的,耗时不明显了。世界瞬间清净了
把 200 毫秒的接口优化到 20 毫秒,第二天产品加了个新功能,又变回 200 毫秒。我在心里点了点头。我把执行计划贴出来逐行分析,发现少了一个索引。果然现实比段子更精彩
打包体积优化了一整天,首屏加载还是慢得像老牛拉车。我把相关的记录都翻了出来做对照。我在心里给这次的容量规划重算了一遍,留了余量。同事说这波操作可以写进新人培训教材
把 200 毫秒的接口优化到 20 毫秒,第二天产品加了个新功能,又变回 200 毫秒。我默默记下了这句话。我发现真正慢的是序列化那一步。同事说这波操作可以写进新人培训教材
我把这个对象的创建挪到了循环外,GC 压力小了。我把整条链路在心里复盘了一遍。我把这个接口的统计维度加上了,瓶颈终于可视化。第二天这个方案就变成了团队标准做法
一个接口从 200ms 优化到 20ms,感觉自己是全世界最强后端。我把手上的资料翻出来又读了两遍。我发现这个服务的 CPU 大部分花在序列化上。我沉默了,但心里是服的
性能优化最危险的是优化错了地方。我想反驳,但发现他说得对。我在心里给这次的优化目标定了个数,降低一半。那一刻我觉得自己还是很专业的
缓存的失效策略比缓存本身更难设计。我愣了两秒,然后继续敲代码。我发现这个缓存的过期时间设得太短,命中率很低。感动,然后我学到了新的一课
这个索引让查询快了十倍,写入慢了一点。我拉了个小群,把相关同学都叫了进来。我发现这个页面的加载瓶颈在一张没有压过的图上