У меня проблемы с просеиванием всех тем о загрузке из формы, и я не могу найти ничего, связанного с загрузкой и отправкой с URL-адреса.
У меня есть большой файл json в формате gzip, который янужно скачать с внешнего сервера и обработать его результаты на App Engine.У меня это работает прямо сейчас, так что он загружает файл в память и разархивирует его, а затем обрабатывает его в очередь задач в небольших задачах.Однако перед оптимизацией памяти небольшого кода я достиг предела в 128 МБ для App Engine.Я волнуюсь, что это в конечном итоге произойдет снова.
Вот мой код на всякий случай, если он кому-нибудь пригодится:
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 как-нибудь?