我试图将 30 秒的用户 mp3 录音作为 Blob 存储在我的应用引擎数据存储中。但是,为了启用此功能(App Engine 每次上传有 1MB 的限制)并降低成本,我想在上传之前压缩文件并在每次请求文件时解压缩文件。你会如何建议我完成这个(它可以通过任务队列在后台发生,但有效的解决方案总是好的)
根据我自己的测试和研究 - 我看到了两种可能的方法来实现这一点
- 兹库
为此,我需要使用 While 循环一次压缩一定数量的块。但是,App Engine 不允许您写入文件系统。我考虑过使用临时文件来完成此操作,但是在尝试从临时文件中解压缩内容时,我对这种方法没有运气
- 压缩包
从网上阅读来看,应用引擎 url 获取功能似乎已经请求了 gzip 压缩的内容,然后将其解压缩。有没有办法阻止函数解压缩内容,以便我可以将其以 gzip 格式放入数据存储区,然后在需要将其回放给用户时解压缩?
让我知道您将如何建议使用 zlib 或 gzip 或其他一些解决方案来完成此操作。谢谢