所以我正在研究php中的一些东西,我必须从sql数据库中获取我们的图像,它们将在base64中编码.显示这些图像的速度是至关重要的,所以我试图弄清楚是否更快将数据库数据转换为图像文件,然后将其加载到浏览器中,或者只是回显原始base64数据并使用:
FireFox和其他Gecko浏览器支持哪种版本.
所以回顾一下,传输实际图像文件或base64代码会更快.使用ajax加载图像时,它需要更少的http请求吗?
图像总共不超过100个像素.
Base64编码使文件更大,因此传输速度更慢.
通过在页面中包含图像,每次都必须下载.外部图像通常只下载一次,然后由浏览器缓存.
它与所有浏览器都不兼容
好吧,我不同意你们中的任何人.有些情况下,您需要加载越来越多的图像.并非所有页面都包含3个图像.实际上我正在一个你要加载200多张图像的网站上工作.当100000用户在非常负载的站点上请求200个图像时会发生什么.返回图像的服务器磁盘应该崩溃.更糟糕的是,您需要向服务器发出如此多的请求,而不是使用base64.对于如此多的缩略图,我更喜欢预先保存在数据库中的base64表示.我在http://www.stoimen.com/blog/2009/04/23/when-you-should-use-base64-for-images/找到了解决方案和强有力的论证.这家伙真的是在这种情况下做了一些测试.我印象深刻,也做了我的测试.现实就像它说的那样.对于在一个页面中加载的大量图像,来自服务器的一个响应非常有用.
如果不进行修改,为什么要一次又一次地重新生成图像。假设,即使根据1000个不同的条件可以显示1000个不同的图像,我仍然认为磁盘上的1000个图像更好。请记住,基于磁盘的映像可以由浏览器缓存并节省带宽等。