
大家好,我是哪吒。
一、前情提要
在上一篇文章中提到,有一个页面加载速度很慢,是通过缓冲流优化的。

查询的时候,会访问后台数据库,查询前20条数据,按道理来说,这应该很快才对。
追踪代码,看看啥问题,最后发现问题有三:
- 表中有一个BLOB大字段,存储着一个PDF模板,也就是上图中的运费模板;
- 查询后会将这个PDF模板存储到本地磁盘
- 点击线上显示,会读取本地的PDF模板,通过socket传到服务器。
大字段批量查询、批量文件落地、读取大文件并进行网络传输,不慢才怪,这一顿骚操作,5秒能加载完毕,已经烧高香了。

经过4次优化,将页面的加载时间控制在了1秒以内,实打实的提升了程序的秒开率。
- 批量查询时,不查询BLOB大字段;
- 点击运费查询时,单独查询+触发索引,实现“懒加载”;
本文作者哪吒分享了在性能优化过程中遇到的问题,通过4次优化将页面加载时间控制在1秒以内。接着探讨了缓存的概念,包括分类和缓存穿透的解决方案。在Guava Cache和Redis的使用中,分析了缓存的优缺点,指出本地缓存和分布式缓存的选择。最后,作者以实际案例说明了不当缓存可能导致的问题,并提醒读者在使用缓存时要谨慎考虑数据大小和内存限制。
订阅专栏 解锁全文
2348

被折叠的 条评论
为什么被折叠?



