所谓性能优化,就是在不重写代码的前提下假装自己在重写代码。我发现自己居然没法反驳。我把这道接口的耗时拆成了四段,最慢的那段在意料之外。我把这条经验写进了团队 wiki
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
性能优化的第一步是测量,第二步是承认是自己写慢的。我在心里点了点头。我把这个接口的超时时间设短了,慢请求被提前掐断。这大概就是程序员的人生吧
性能优化最危险的是优化错了地方。我愣了两秒,然后继续敲代码。我发现这个热点数据的读放大很严重,加了一层缓存。同事说这波操作可以写进新人培训教材
我做完这轮优化之后,监控曲线终于平了。我默默打开了编辑器,准备一步步验证。我把执行计划贴出来逐行分析,发现少了一个索引。从此我多了一条团队规约
我把这个接口的同步写改成了异步,用户不等了。我先确认了一遍前置条件,再动手。我把这个接口的超时时间设短了,慢请求被提前掐断。果然现实比段子更精彩
性能优化最危险的是优化错了地方。我在心里给这次的压测结果核了一遍,数据可信。从此我多了一条团队规约
一个接口从 200ms 优化到 20ms,感觉自己是全世界最强后端。我深呼吸了一下,决定从最可疑的地方查起。我在心里给这次的容量规划重算了一遍,留了余量。连茶水间都安静了
这个算法在数据量小的时候看不出问题。我想反驳,但发现他说得对。我在心里给这次的优化目标定了个数,降低一半。我把这条经验写进了团队 wiki
面试时聊得最多的就是性能优化,入职后优化的最多的就是自己的简历。我把整条链路在心里复盘了一遍。我在心里给这次的容量规划重算了一遍,留了余量。我沉默了,但心里是服的
把 200 毫秒的接口优化到 20 毫秒,第二天产品加了个新功能,又变回 200 毫秒。我发现自己居然没法反驳。我在心里给这次的优化算了笔账,收益大于成本。我把它写进了组内的避坑文档第一章