Appengine上传限制为10000个文件

时间:2013-11-04 07:34:23

标签: java google-app-engine gwt

尝试将我的应用程序部署到appengine失败了,因为上传的硬限制,即10,000。

我的应用程序正在使用其他两种语言的外部库和常量。请参考以下快照:

enter image description here

GWT.Async块已被放置在项目中的必要位置。

使用以下编译时选项: -localWorkers 3 -XfragmentCount 10

但问题是当我将项目上传到appengine时,我得到以下异常:

**

  

java.io.IOException:应用程序限制为10000个文件   34731

**

我知道我可以通过减少跨浏览器兼容性或减少区域设置来减少文件数量。但在部署

时,这不是一个实用的方法

所以请给我一些选择。

我想提到的另一件事是该项目在其大多数屏幕中广泛使用VerticalPanel / Horizo​​ntalPanel / FlexTable / DialogBox。我不确定这是否与这个问题有关。

3 个答案:

答案 0 :(得分:0)

我担心这也会发生在我身上,我在项目中间遇到了这个问题,因此我将浏览器限制为chrome和ff。但是当我必须真正部署时,这可能是一个问题。

每个版本的应用程序限制为10,000个上传文件。每个文件的最大大小限制为32兆字节。此外,如果所有版本的所有文件的总大小超过最初的免费1千兆字节,那么每月每GB的费用将为0.13美元。 https://developers.google.com/appengine/docs/quotas#Deployments

解决方案可能是将每种语言部署为应用程序,如果您的数据在语言之间不相关

答案 1 :(得分:0)

听起来您可能也会将所有gwt类与您的应用程序一起部署。

当我是一个沉重的appengine用户时,我肯定会把我上传的所有课程(而不包括任何非共享的gwt代码)放进去。您可能希望$ find . -n "*.class" | wc -l计算您要发送的课程数量。

事先将你的课程加工成15000个课程文件= 1个jar文件。

制作巨大的罐子真是太糟糕了,因为你需要在每次改变时重新部署整个罐子。最好有很多小罐子。 ;)

答案 2 :(得分:0)

我所做的是将所有GWT生成的文件放入ZIP中,并使用servlet提供它们。

为了优化一些事情,我在解压缩后将每个文件放在memcache中。