我正在开发一款谷歌应用引擎应用程序,其中会有用户个人资料的功能。我正在查看谷歌应用程序的在线教程,发现最大静态文件数(应用文件和静态文件)不应超过3000。我担心当用户数量增加时,用户是否能够上传他们的图像。这个限制仅适用于免费配额还是在计费后也一样?文档中提到这是超出免费配额的额外限制。
请给予建议。
提前致谢。
请给予建议。
提前致谢。
正如其他人所提到的,对于更动态的内容,例如用户上传的文件,应将其作为blob存储在数据存储中,或者如果它们更大,则作为Blobstore对象(最大大小为2GB)。
3000个静态文件是相当合理的,除非您有很多静态资产(例如图像、HTML、CSS和JS文件)。然而,对于Python源代码,您还有另一种解决方法,那就是将所有.py文件放入单个ZIP中,以便它们不会对计数造成太大影响。这里有一篇文章描述了如何做到这一点:
在App Engine上使用Django 1.0和Zipimport
只需注意,本文讨论了如何将Django的源代码与App Engine捆绑在一起;但是,除非您正在使用1.3或使用分支,否则这是不必要的。App Engine系统已经免费为您提供了0.96或1.2.5。
更新(2011年3月):在SDK 1.4.3中,App Engine团队发布了文件API,允许您使用Blobstore以编程方式读/写文件/数据。这适用于Python和Java。更多信息可以在相应的博客文章中找到。除了Blobstore之外,公共路线图还显示了将来将集成Google存储访问的功能。
更新(2011年9月):在SDK 1.5.4中,App Engine团队将Blobstore文件大小限制从2GB删除,以允许无限大小的文件。但是,您需要按GB付费存储。
更新(2011年10月):在SDK 1.5.5中,App Engine团队将文件的最大数量从3000个扩展到10000个,这对用户来说是一个巨大的提升。此外,单个文件的最大大小也从10MB增加到32MB。另一个与存储相关的改进是用户现在可以直接从他们的App Engine应用程序向Google的云存储写入数据。