Skip to content

Latest commit

 

History

History
86 lines (44 loc) · 6.81 KB

File metadata and controls

86 lines (44 loc) · 6.81 KB

你将花费在阅读博客文章来设置自己的图像处理管道和调整配置上的时间通常是远远多于买服务的费用。有了Cloudinary提供的免费服务,Imgix提供的免费试用,Thumbor作为OSS的备选方案已经存在,你可以使用许多选项来实现自动化。

为了获得最佳的页面加载时间,你需要优化图像加载。这种优化需要一个响应式图像策略,可以从服务器上的图像压缩、自动选择最佳格式和响应式调整大小中获益。重要的是,你要尽可能快地将正确大小的图像以正确的分辨率发送到适当的设备。做这件事不像人们想象的那么容易。

使用服务器vs.a CDN

由于图像处理的复杂性和不断发展的本质,我们将引用在该领域有经验的人的话,然后继续提出建议。

"如果你的产品不是图像处理,那就不要自己动手。像Cloudinary(或imgix, Ed.)这样的服务比你预期的要高效得多,所以要使用它们。如果你担心成本,想想你在开发和维护上要花多少钱,还有托管、存储和交付成本。"——Chris Gmyr

目前,我们同意并建议你考虑使用CDN来满足你的图像处理需求。我们将检查两个CDN,看它们与我们前面提出的任务列表相比如何。

Cloudinary和imgix

Cloudinaryimgix是两种成熟的图像处理CDN。它们是全球数十万开发者和公司的选择,包括Netflix和Red Bull。让我们更详细地看看它们。

基础是什么?

除非你是像他们这样的服务器网络的所有者,否则与使用你自己的解决方案相比,他们的第一个巨大优势是使用分布式全局网络系统使镜像的副本更接近你的用户。对于CDN来说,随着趋势的变化,“未来证明”你的图像加载策略也要容易得多——这需要你自己进行维护、跟踪浏览器对新兴格式的支持以及跟踪图像压缩社区。

其次,每个服务都有一个分层定价方案,Cloudinary提供免费级别,imgix相对于他们的高容量付费方案,以较低的价格为他们的标准级别定价。Imgix提供免费试用,并提供服务积分,因此几乎等同于免费级别。

第三,两个服务都提供API访问。开发人员可以通过编程方式访问CDN并自动处理。客户端库、框架插件和API文档也是可用的,其中一些功能仅限于较高的付费级别。

我们来看看图像处理

现在,我们只讨论静态图像。Cloudinary和Imgix都提供了一系列的图像处理方法,并且都在它们的标准和免费方案中支持压缩、调整大小、裁剪和创建缩略图等主要功能。

Cloudinary媒体库: 默认情况下,Cloudinary对非渐进式JPEG进行编码。要选择生成它们,请检查“More options”中的“Progressive”选项或传递“fl_progressive”标志。

Cloudinary列出了7个广泛的图像转换类别,其中共有48个子类别。Imgix广告超过100个图像处理操作

默认情况下会发生什么?

  • Cloudinary在默认情况下执行以下优化:

  • 使用MozJPEG编码JPEG(选择不使用Guetzli作为默认值)

  • 从转换后的图像文件中删除所有相关的元数据(原始图像保持不变)。若要覆盖此行为并交付转换后的图像,且其元数据完整,请添加keep_iptc标志。

  • 可以生成WebP, GIF, JPEG,和JPEG- xr格式的自动质量。要覆盖默认的调整,请在转换中设置quality参数。

  • 在生成PNG、JPEG或GIF格式的图像时,运行优化算法以最小化文件大小,对视觉质量的影响最小。

Imgix没有像Cloudinary那样的默认优化。它有一个可设置的默认图像质量。对于imgix, auto参数可以帮助你在整个图像目录中实现基线优化级别的自动化。

目前有四种不同的方法:

  • 压缩(Compression)

  • 视觉增强(Visual enhancement)

  • 文件格式转换(File format conversion)

  • 去除噪点(Redeye removal)

Imgix支持以下图像格式:JPEG, JPEG2000, PNG, GIF, GIF动画,TIFF, BMP, ICNS, ICO, PDF, PCT, PSD, AI。

Cloudinary支持以下图像格式:JPEG, JPEG 2000, JPEG XR, PNG, GIF,GIF动画, WebP,WebP动画, BMPs, TIFF, ICOs, PDF, EPS, PSD, SVG, AI, DjVu, FLIF, TARGA。

性能怎么样?

CDN输送性能主要与延迟和速度有关。

对于完全未缓存的图像,延迟总是有所增加。 但是,一旦图像被缓存并在网络服务器之间分配,全局CDN可以找到最短的用户访问路径,加上正确处理的图像的字节节省,与处理不当相比,几乎总能缓解延迟问题。 试图穿越地球的图像或孤零零的服务器。

这两种服务都使用快速和广泛的CDN。这种配置减少了延迟并提高了下载速度。下载速度影响页面加载时间,这是用户体验和转换的最重要指标之一。

那么它们是如何比较的呢?

Cloudinary拥有16万用户,包括Netflix、eBay和Dropbox。Imgix没有报告它有多少客户,但它比Cloudinary小。 即便如此,imgix的基础包括重量级的图像用户,如Kickstarter、Exposure、unsplash和Eventbrite。

在图像处理中有太多的不可控变量,因此很难在两个服务之间进行面对面的性能比较。这在很大程度上取决于你需要处理多少图像(这需要可变的时间),以及最终输出需要多大的大小和分辨率,这将影响速度和下载时间。对你来说,成本可能是最重要的因素。

cdn需要成本。一个大量图像、大流量的网站每月的CDN费用可能高达数百美元。要充分利用这些服务,需要具备一定的知识和编程技能。如果你不做任何太花哨的事情,你可能不会有任何麻烦。

但是如果你不习惯使用图像处理工具或API,那么你将看到一条学习曲线。为了适应CDN服务器位置,你需要更改本地链接中的一些url。做正确的尽职调查:)

结论

如果你目前正在提供自己的图像或计划提供,也许你可以考虑一下CDN。