东山县铜陵镇做景区票务的阿德,前阵子给我发消息。他说游客扫了码要等半天,退单也变多了。我查下来,问题不在服务器,就出在一张 4.2 兆的导览图上。你在漳州做景区、做门店小程序的,多半踩过同一个坑。压图之前,我劝你先搞清楚一件事。
先掐个秒表,别急着压图
先说我的笨办法。拿自己手机关掉 WiFi,用流量打开,掐个秒表。阿德那个导览页,手机端要 11 秒才出图。他自己还觉得挺快,因为一直在店里用 WiFi 试。办公室光纤测出来的速度不算数,那不是游客的网络。4G 下超过 5 秒,游客基本就划走了。这个数是我在他那测的,你那边可能更好。
量完还得定位,慢的不一定是图。我把他那页的资源一个个扒下来看。38 张图里有 6 张超过 2 兆,脚本还挂了三个。图要是占大头,压图才划算。要是接口慢、脚本堆得多,你把图压成渣也没用。当时我心里咯噔一下,这活比我想的多。我先把图压了,压完再量一次,对比着看。
压到多少才不算糊
我给客户一个土标准。手机屏宽大概 750 像素,图做到 1500 像素宽就够看。阿德那张 4.2 兆的图,我缩到 1600 像素宽、压到 900 K。放在手机上看,基本看不出差别。巴浪鱼那几张菜品图还能再小点。你要省事,就记一个数:单张别超 300 K。土,但好使。
格式这块我栽过跟头。我一开始全转成了新格式,结果游客里那批老安卓机,图出不来,按钮也点不动。后来我学乖了,新旧格式各留一份,按机型给。漳州这边景区游客手机新旧差别大,老年团那批机器尤其挑。返工那次我多花了两天。我现在做景区单子,都会先借一部老安卓机扫一遍。
压完图还得防反弹
图压完不等于结束。阿德店里的小伙伴后来上传新品,直接把相机原图传了上去,首页又慢回去。我在他后台加了个卡口,单张超过 500 K 就不让传。你自己管站也一样,定个规矩:新图先过一遍工具再传。我见过太多压完三个月又反弹的站,问题都在这。
总结
慢不慢先掐表量一次,图占大头再压。单张压到 300 K 以内,上传设个卡口防反弹。你要试,先拿手机流量打开你自己的小程序,掐个秒表。超过 5 秒再说压图的事。阿德那单改完,他的导览页手机端进到四秒内。别急着换服务器,那钱多半白花。