如何在PHP中减少图像加载时间

如何在PHP中减少图像加载时间,php,image,optimization,encoding,Php,Image,Optimization,Encoding,我目前正在用PHP开发一个网站,在这个网站上,通过AJAX加载了1000张图片。所以这需要很多时间。是否有任何优化技术可以缩短加载时间。我不想改变我们的图像质量 图像编码会有帮助吗 最好先显示50个图像,然后在页面滚动时加载剩余的图像。下面是一个例子 查看页面的缓存逻辑。这些图像可能可以由web服务器缓存。您使用Apache还是IIS?优化和微优化思想: 减少图像文件大小 这可能是真正减少加载时间的最重要因素(下载更少->完成更快) 使用一些图像优化服务,如SmushIt或一些本地软件,如Ir

我目前正在用PHP开发一个网站,在这个网站上,通过AJAX加载了1000张图片。所以这需要很多时间。是否有任何优化技术可以缩短加载时间。我不想改变我们的图像质量


图像编码会有帮助吗

最好先显示50个图像,然后在页面滚动时加载剩余的图像。下面是一个例子
查看页面的缓存逻辑。这些图像可能可以由web服务器缓存。您使用Apache还是IIS?

优化和微优化思想:

减少图像文件大小 这可能是真正减少加载时间的最重要因素(下载更少->完成更快)

  • 使用一些图像优化服务,如SmushIt或一些本地软件,如IrfanView
  • 找出转换图像的最佳格式
  • 试着失去一些品质,你会惊讶地发现1%有时会有一些难以察觉的损失
  • 如果不需要,请剥离图像元数据/EXIF
网络服务器与硬件 访问时间是另一个重要因素

  • Apache很好,但其他服务器可能在提供图像文件或小文件(例如Nginx/lightHTTPd)时表现更好
  • 调整Web服务器的配置以满足您的需要
  • 选择速度非常快的存储器(如果可能,请使用RAM)
网页
  • 使用“永不翻页/滚动加载”或“单击以获取更多信息”
  • 为图像集分页(可能根据重要性)
  • 缩短图像容器和链接,去掉扩展名,因为浏览器将从文件头获取文件类型,将文件重命名为基本(62)计数器,而不是常规的1.jpg…20000.jpg(例如)

加载1000个图像是否有特殊原因?你不能将其限制为50,然后让用户向下滚动并单击“更多”,如Youtube、Facebook等吗?默认情况下,你的浏览器一次只能从每个域加载6-8个资源,请参见此处-如果你加载许多小图像以供显示,你可以使用指向同一位置的多个子域来解决这个问题,您可以将它们组合成一个单独的样式,然后使用CSS显示您想要的样式。这与PHP无关。你的概念很好,但在这里,我们需要在浏览器加载时显示1000个图像。我正在尝试发送数据:image/png,base64;FGKAJHKADFKKHAKDJHKJHKJADFJHKJ类编码图像,用于每个图像请求。你知道吗@h2ooooooo@MrinmoyGhoshal我的问题是为什么在加载浏览器时需要显示1000个图像。这是一个巨大的产品页面,还是所有的图标/笑脸/小图片都可以转换成精灵?为什么要用ajax加载它?如果您告诉我们更多关于您的问题,我们可以帮助您找到更好的替代方法。改进此“课程”的更好方法是使所有html正常加载,但您无法看到的图像没有“scr”标记。当你向下滚动时,jquery脚本会填充“scr”标记。