python - Python Boto3 - 如何在进程开始复制到另一个存储桶之前检查s3文件是否已完全写入
问题描述
在进程 B 开始使用 boto3 将文件复制到 AWS S3 存储桶 B 之前,如何确保进程 A 已在 AWS S3 存储桶 A 中完全写入大文件(5+ GB)?
解决方案
如果在 Amazon S3 中创建一个新对象,它只会在上传完成后出现。在完成上传之前,其他进程将无法查看它。
无法在 S3中更新对象。相反,它们被替换为新对象。因此,如果一个对象正在更新过程中,它仍然会作为旧对象出现在其他进程中。
最好的方法是通过配置 Amazon S3 Event Notifications来触发流程B。上传新对象后,S3 可以触发 Lambda 函数(或发送通知),然后执行第二步。
推荐阅读
- javascript - 带有ajax请求的jQuery .each循环
- python - 将 2d 数组组合到 3d 初始化错误
- java - 使用父 xpath 在 appium 中查找子 xpath 计数
- python - 如何摆脱 csv 文件中的 \n \r 字符
- flutter - Flutter 使用 cloud_functions 包捕获云函数 onCall functions.https.HttpsError
- json - 如何将标题放在axios all中
- .net-core - .net 核心 Web 应用程序中的 itext7 错误:AdobeGlyphList
- tomcat - Tomcat 无法处理 PUT 请求,但在向服务器发送 GET、POST 等请求时工作正常
- bash - 循环 bash 文件中的名称行
- stored-procedures - 调用天蓝色函数调用雪花中的过程加载数据导致消费计划超时,还有其他方法可以实现吗?