问题提出:erp系统使用者提出erp界面响应慢;卡顿;
问题分析:通过chrome浏览器分析问题得出
1 :css,js,png,等文件挺大,最大的css文件有1.1M ,导致请求响应慢
1:css,js,png,等文件每次刷新都重新请求服务器,耗时很长;不合理
2: 接口响应速度也比较慢,几百ms,
解决问题方案:
1 :通过过滤器配置 Gzip , 压缩css,js,png文件,减小文件大小 从1.1M 优化到300kb
2 :通过过滤器对css,js文件设置设置缓存 100ms ~ 1s 优化到 10ms - 30ms
3 : 优化后端接口;从400ms ~ 700ms 优化到 30ms - 100ms
解决问题操作:
1 : 后端接口优化的思路;
a :能不请求数据库,就别请求数据库;
b :如果可以给系统集成缓存,在数据库和service之间添加一层缓存层;
c :真要请求数据库,一次性请求好数据库,莫在循环里多次请求数据库,在循环外请求好数据,封装到map里面去,循环里面可以直接获取使用;
d : 尽量少用嵌套循环,降低时间复杂度;
e :轻量化返回数据,只返回前端需要的数据;