2011-09-27 67 views
4

什么是投放静态图片和JavaScript文件使用AppEngine上的最佳方式是什么?服务的AppEngine静态文件

从我可以看到有适用两种方法,具有存储在你上传服务的战争目录中的文件,在设计时。另一种方式是使用Blobstore,并在服务之后上传文件。

我看到有关于战争目录(每个文件10MB的限制)的资源文件150MB的限制,但是从我所看到的,这是简单的,“自由”的空间。它比blobstore慢吗? blobstore的动态特性对我来说并不重要,所以目录似乎是更好的选择。

任何人都可以提供任何建议吗?我的结论是否正确?

回答

9

它的优良把JavaScript和图像文件在你的资源文件目录AppEngine上。根据我的经验,blobstore和资源文件具有相似的性能特征。

然而,随着网站的速度变得更为重要,可能更有意义,使用CDN的静态文件更快地得到你的用户。

如果静态JavaScript是常见的东西像jQuery或jQuery的UI我会建议使用谷歌图书馆API马上蝙蝠:http://code.google.com/apis/libraries/devguide.html

+0

+1我同意这一点。使用CDN是一种更好的方法。 – Rudy

+0

Blobstore和资源文件可能似乎具有类似的性能特征,但是也不是用于向上服务器的方式。试一试静态文件。你可能会很惊讶。 –

0

如果它仅仅是一个正常的网站,它承载了一些图像和JavaScript文件,一般应该按照标准的方式将它们放入战争目录。 我看不到多少好处把这些文件放入Blob存储正如你所说不感兴趣的动态特性。更不用说您使用blobstore添加的另一个复杂级别。

4

服务静态文件(图像,javascript,css)的理想方式是使用<static-files>appengine-web.xml中声明它们。

http://code.google.com/appengine/docs/java/config/appconfig.html#Static_Files_and_Resource_Files首段规定出来很好:

许多Web应用程序都被直接提供给用户的浏览器中的文件,如图片,CSS样式表或浏览器JavaScript代码。这些被称为静态文件,因为它们不会改变,并且可以从专用于静态内容的Web服务器中受益。 App Engine从独立于应用程序服务器的专用服务器和高速缓存提供静态文件。