目前我博客的图片是实时生成+lazyload这种模式,应用后发现前后台都很卡。
主要导致服务器加载缓慢的是,每张图片都要进行一次MD5运算和后台缩略图状态判断。
于是有一些逻辑上的优化思路:
1.JS读取文件数组,glob选定范围(例如21-30:21,22,25,28,30),传回存储端。
2.存储端转数组(不得超过100张),逐一匹配缓存,把缓存状态(hash/无此图)传回客户端。
3.客户端生成预览页(加载图片或“正在生成缩略图”),点击生成缩略图自动排队运转,如果线程过多则改为“后台繁忙,点击重试”。