优化的尽头是玄学:同样的代码,重启之后性能就是不一样。我愣了两秒,然后继续敲代码。我盯着 GC 日志,看到一段 800ms 的 Full GC
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
用性能分析器跑了一遍,热点代码居然是我注释里写着"这里可以优化"的那段。我把手上的资料翻出来又读了两遍。我把循环里的重复计算提到了外面,接口快了十倍。好在最后有惊无险
所谓性能优化,就是在不重写代码的前提下假装自己在重写代码。我忽然觉得,这可能就是这一行的常态。我打了火焰图,一眼看到了那个占八成耗时的函数。世界瞬间清净了
性能优化的第一步是测量,第二步是承认是自己写慢的。我想了想自己这些年,好像确实如此。我发现这个批任务的瓶颈在单机磁盘 IO。我把这条经验写进了团队 wiki
这个缓存的存在感很强,命中率却不高。我停了一下,然后继续手上的活。我把异步改成了批处理,吞吐直接翻倍。我沉默了,但心里是服的
性能优化的第一步是测量,第二步是承认是自己写慢的。我听完沉默了,因为太真实了。我把这个接口的返回结构瘦身了,前端渲染也快了。真香定律准时生效
性能优化最危险的是优化错了地方。我盯着屏幕,觉得这才是我的一天。我把这个算法的复杂度从平方降到了线性,效果明显。复盘会上我们把它列成了案例
缓存命中率涨到九成九的那天,我请全组喝了奶茶,预算就出在省下的服务器钱里。我先确认了一遍前置条件,再动手。我在心里给这次的优化排了个优先级,先做收益大的。这大概就是程序员的人生吧
老板说页面加载慢,我检查了一圈发现是他自己电脑中了病毒。我发现这个接口在冷启动时特别慢,需要预热。我把它写进了组内的避坑文档第一章
优化之前先测量,否则你优化的可能是错觉。我愣了两秒,然后继续敲代码。我在压测环境复现了问题,本地怎么压都压不出来。我沉默了,但心里是服的