我正在制作一个需要向用户显示3种缩略图的Web应用程序。不,我可能会在很多用户的服务器上找到很多缩略图文件。
这让我觉得在运行中生成缩略图比存储它们更好吗?
速度与存储与逻辑 - 哪一个?
这里有没有人面临这样的困境 - 让我知道!
我正在使用CodeIgniter及其内置的图像库来生成缩略图。
答案 0 :(得分:6)
我会选择:在需要时生成,然后存储。
使用/img/42/400x300.jpg
之类的网址链接到图片。通过重写规则,您可以在图像不存在的情况下启动PHP脚本 。然后,该脚本可以生成所请求大小的请求图像并将其存储在公共Web文件夹中,Web服务器可以在下次直接为其提供服务。
这为您提供了两全其美的效果:图像在需要之前不会生成,只会生成一次,甚至可以非常灵活地在运行中处理不同的图像尺寸。
如果您担心存储空间,可以添加常规清理作业,删除旧图像或者分析访问日志文件,并删除一段时间内未访问的图像。
答案 1 :(得分:3)
我的评论作为答案:(为什么不:)
我个人对此的看法是,如果你预计会有很多用户使用存储,因为每个页面负载为每个用户创建动态缩略图的负载会对服务器产生负担,也许会创建它动态第一次看到它然后存储它。
您还可以利用浏览器缓存来节省负载和带宽。 (边缘但每个小帮助)