将文件从网址发送到GCS

时间:2018-06-04 04:13:05

标签: google-app-engine google-cloud-storage

我无法筛选有关从表单上传的所有主题,但似乎无法找到与下载和从网址发送相关的任何内容。

我有一个大型的压缩json文件,我需要从外部服务器下载并在App Engine上处理其结果。我现在正在使用它,以便将文件下载到内存中并解压缩,然后将其处理为小任务中的任务队列。但是,在进行小代码内存优化之前,我在App Engine上达到了128MB的限制。我担心这最终会再次发生。

这是我的代码,以防它对其他人有帮助:

READ_BLOCK_SIZE = 1024*8
request = urllib2.Request(url)
response = urllib2.urlopen(request)
d = zlib.decompressobj(16+zlib.MAX_WBITS)

str = ""
while True:
    data = response.read(READ_BLOCK_SIZE)
    if not data:
        break
    data = d.decompress(data)
    str += data
return str

有没有人有任何想法?有没有一种很好的方法来处理App Engine上的大文件并将它们直接发送到GCS,所以我不必将它全部保存在内存中?以某种方式将下载权限流式传输到GCS?

0 个答案:

没有答案