首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IMDb是如何调整其实时图像大小和裁剪的?

IMDb是如何调整其实时图像大小和裁剪的?
EN

Stack Overflow用户
提问于 2011-06-23 17:10:49
回答 1查看 1.6K关注 0票数 3

我一直在研究CDN和图像缩略图生成,IMDb是如何进行图像处理的,给我留下了深刻印象。下面是一个缩略图版本的示例:

http://ia.media-imdb.com/images/M/MV5BMTc0MzU5ODQ5OF5BMl5BanBnXkFtZTYwODIwODk1._V1._SY98_CR1,0,67,98_.jpg

这里有一个经过调整的版本,它使用大小和裁剪:

http://ia.media-imdb.com/images/M/MV5BMTc0MzU5ODQ5OF5BMl5BanBnXkFtZTYwODIwODk1._V1._SY400_CR10,40,213,314_.jpg

从“.V1._.”看上去一切都很直接.on用于确定如何操作图像。这一切都做得非常快,我决定找到一个模仿这个功能的现有解决方案。

我在图像调整中找到了很多解决方案,我也找到了Google在Java中转换图片的页面。然而,我认为亚马逊的IMDb并不是用谷歌来服务它的图片,而且由于我所有的图片都在亚马逊的S3上,我认为我不能使用这个解决方案。

经过四个小时的在线搜索,我决定问这里的智慧人群。

进一步的上下文:我正在亚马逊的ElasticBean秸秆上构建一个web应用程序,并且我正在考虑有一个单独的服务器(也许是另一个Bean秸秆)来处理images...similar,以实现IMDb正在做的事情。

提前感谢您的洞察力。

EN

回答 1

Stack Overflow用户

发布于 2011-06-23 18:32:15

我不能谈论IMDB的具体实现,但我过去在Amazon和EC2上实现了类似的解决方案。以下是我的实现概述:

所有主(全尺寸)图像存储在accessible.

  • All上,但不是公开的图像src url指向存储在S3上的图像的EC2 web server.
  1. Smaller (缩略图)版本,并具有标识大小和方面分配的命名约定:

代码语言:javascript
复制
- "myimage1\_s200.jpg" is a square version of "myimage1.jpg" that has been resized as a 200x200 square.
- "myimage1\_h100.jpg" has been resized to a maximum height of 100 (with a variable width that conforms to the original aspect ratio).

当requester.

  • When服务器接收到特定图像大小的请求时:它检查该图像大小是否已经存在,如果是,则将现有图像返回给服务器EC2服务器接收到一个不存在的图像大小请求:它检索同一图像的下一个较大版本的副本并调整其大小,并将新图像返回给请求者,并将副本保存到S3以供将来使用。

执行情况说明:

如果您知道exist!

  • Resizing上的
  1. 指向图像src直接调整了S3上的图像大小,那么它们的速度要快得多,下一个更大版本的图像vs总是在加载下更快地回到原来的版本!
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6457956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档