其实主要都是优化sql,每条sql争取优化到1s以内,但凡出来2s的sql,页面都会被拖到10s左右才加载出来。
1. 这次页面非常多数据是共用一些底层数据的,当时是先不管效率,把页面先做出来,sql也以实现需求为主,效率次之,后来为了提高效率,把每个慢的数据集各自都落地到一张物理表,定时调度。
2. 后面发现这样出现好几张物理表,维护也不方便。再后来,发现可以抽取这些数据集的公共部分,并且是跑得慢的部分,落地到一张表里,然后需要时再从这张表抽数再计算。这样就能避免落地太多表不好维护,并且效率也会高。