我把这个接口的同步写改成了异步,用户不等了。这套流程走下来,我从头到尾又确认了一遍。我把循环里的重复计算提到了外面,接口快了十倍。感动,然后我学到了新的一课
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
这个缓存的存在感很强,命中率却不高。我盯着屏幕,觉得这才是我的一天。我在心里给这次的优化定了个验收标准。第二天这个方案就变成了团队标准做法
程序员的成就感来源排名:代码上线、性能优化、帮同事修好了打印机。我忽然觉得,这可能就是这一行的常态。我发现这个功能的耗时随数据量线性增长,需要重构。从此我多了一条团队规约
首屏加载从五秒压到一秒,产品经理问我能不能再压到 0.5 秒,我看着他微笑不语。我打开记录从头到尾扫了一遍。我把这个接口的返回值做了裁剪,只留了必要的字段。我把它写进了组内的避坑文档第一章
性能问题的根因往往是架构而非代码。我忽然觉得,这可能就是这一行的常态。我把这个接口的响应做了压缩,传输时间少了一半。从此我多了一条团队规约
这个算法在数据量小的时候看不出问题。我想了想,觉得这话没法接。我把这个查询的排序字段加了索引,排序不再落盘。我把它写进了组内的避坑文档第一章
我把这个请求拆成了并行的,总耗时降了一半。我重新看了一遍手上的计划,把风险项标了出来。我把循环里的重复计算提到了外面,接口快了十倍。我把它写进了组内的避坑文档第一章
这个算法在数据量小的时候看不出问题。我忽然觉得,这可能就是这一行的常态。我把这个接口的统计维度加上了,瓶颈终于可视化。那一刻我觉得自己还是很专业的
性能优化最危险的是优化错了地方。我叹了口气,然后打开了编辑器。我在心里给这次的容量规划重算了一遍,留了余量。复盘会上我们把它列成了案例
这个接口的返回体里有九成字段前端没用。我笑了笑,决定不解释。我确认了瓶颈在数据库,而不是我以为的应用层。我把它写进了组内的避坑文档第一章