我们正在使用GCS(谷歌云存储),我想知道https://cloud.google.com/appengine/docs/standard/python/googlecloudstorageclient/read-write-to-cloud-storage中描述的方法是否使用打开/关闭来锁定文件,以防止操作期间其他人访问该文件?
我是新手,目前发现的第一个方法是在import cloudstorage as gcs
喜欢...
current_details = json.loads(device_blob.download_as_string().decode('utf-8'))
LOGGER.info(current_details)
current_details.update(details)
device_blob.upload_from_string(json.dumps(current_details))
但是很明显,在下载和上传调用之间,其他一些操作可能会修改文件。
所以如果要使用import cloudstorage as gcs
,请告诉我。
谢谢!
答案 0 :(得分:0)
GCS根本没有任何锁定。如果您想安全地进行“读取-修改-写入”,请在上传文件上使用Preconditions,以确保在写入时,中间没有任何更改(如果已更改,请重新执行读取和修改)最新版本)。
很遗憾,cloudstorage
python库对此功能的支持很弱,您可能需要使用automatically generated "google API library"。