gsutil流媒体似乎没有实际流

时间:2017-04-23 23:22:22

标签: gcloud gsutil

我按照这里的说明操作: https://cloud.google.com/storage/docs/streaming

当我开始通过流式传输上传到Google云端存储的过程时,必须先完成此过程,然后才能在Google云中显示任何内容。如果这个过程以任何方式中断,就不会出现任何问题。

有没有办法实际流式传输到gcloud存储(甚至可能在上传完成之前开始下载?

1 个答案:

答案 0 :(得分:0)

它实际上通过可恢复的上传进行流式处理,但在您达到可恢复的块大小之前不会发送一个块: https://github.com/GoogleCloudPlatform/gsutil/blob/88ab2023f0dcf3d7a5444832eb547b2cbc68d7bd/gslib/util.py#L833

你可以写一个相当简单的python脚本来一次生成更多,然后暂停,让你看到上传的发生:

import sys
import time

for i in range(3):
  sys.stdout.write('a' * 1024 * 1024 * 101L)
  time.sleep(10)

并将其传递给gsutil,如下所示:

python my_data_generator.py | gsutil cp - gs://BUCKET/OBJECT

观看数据传输一段时间,停在睡眠状态,然后继续。

要减少此块大小,您可以调整.boto文件中的GSUtil:json_resumable_chunk_size选项。