首先,当我们谈论“动态图像”时,我不知道应该理解什么......但是在我的网站上(谈论电影 - www.mananaseguro.com)我必须展示每部电影的海报。所以我认为这些图像被认为是动态图像。
我不知道:
如果这些图片应该在缓存中,如果是,那么到期日期(GAE)?
如果这些图片应该在公共文件夹(GWT)中?
如何正确引用这些图片,我使用setUrl("./MananaSeguro/posters/p1.gif")
(GWT)?
如果我的APPLICATION_SPRITE(包含所有UI图像)都在缓存中(GAE)?
我不希望在./client/resources/
目录中包含所有这些图像。是否可以将它们放在WAR目录中以使其更符合要求(如果是,如何配置它)?
之后,我将对我的数据库使用OBJECTIFY,但会出现同样的问题: 你知道我在目录中是否需要存储这些图像(我需要在数据库中引用它们的路径)?
我不知道GAE,但你知道是否有一个有趣的功能来存储这些图像(Blobstore)?
答案 0 :(得分:4)
不确定您是在谈论Google memcache服务还是浏览器缓存。图像应存储在浏览器缓存中(图像服务时,图像服务将设置所需的标题)。图像不应存储在内存缓存服务中,即用于存储定期获取的数据和/或获取或计算的代价很高。
公众(我认为你的意思是“战争”?)文件夹是静态内容,而不是动态。如果您在此处存储电影图像,则每次添加电影时都需要重新部署应用程序。
Images service从blobstore密钥生成服务URL。这些是您在客户端上传递给setUrl的URL。
应用程序精灵图像应该放在公共文件夹中,因为它是静态的。
This page描述了如何指定应从WAR静态提供哪些文件/路径
动态图像将存储在blobstore中,因此您只需要保留blobstore密钥以检索它们
是的blobstore就是你所追求的。使用Images API为您做了很多“繁重的工作”。