2024-07-03 06:46:12 发布
网友
在进程B开始使用boto3将文件复制到aws3bucket B之前,如何确保进程A已经在aws3bucket A中完全写入了大文件(5+GB)?在
您一定应该使用s3事件通知作为lambda函数的触发器,该函数将文件从Bucket a复制到Bucket B。该触发器确保在文件完全上载后开始复制。在
此外,如果您需要执行进一步的操作,您可以使用AWS step函数来定义流程的工作流,例如流程B将在流程A的2秒后启动,流程C和D将在流程B结束执行后并行执行,等等
如果在amazons3中创建了一个新对象,那么它只会在上传完成后出现。在is完成上载之前,其他进程将无法查看它。在
对象不能在S3中更新。而是用新对象替换它们。因此,如果一个对象正在被更新,它在其他进程中仍将显示为旧对象。在
最好的方法是通过Configuring Amazon S3 Event Notifications触发进程B。上传新对象后,S3可以触发Lambda函数(或发送通知),然后执行第二步。在
我也可以上传到40GB。在
由于我要进行多部分上载,所以我会检查要写入的文件是否是closed。S3文件(对象)仅在所有操作完成时关闭。在
closed
另一种方法是使用类似芹菜的异步任务队列。任务完成后,您将收到通知。在
我现在使用Golang,但这两种方法对我都很有效。在
您一定应该使用s3事件通知作为lambda函数的触发器,该函数将文件从Bucket a复制到Bucket B。该触发器确保在文件完全上载后开始复制。在
此外,如果您需要执行进一步的操作,您可以使用AWS step函数来定义流程的工作流,例如流程B将在流程A的2秒后启动,流程C和D将在流程B结束执行后并行执行,等等
如果在amazons3中创建了一个新对象,那么它只会在上传完成后出现。在is完成上载之前,其他进程将无法查看它。在
对象不能在S3中更新。而是用新对象替换它们。因此,如果一个对象正在被更新,它在其他进程中仍将显示为旧对象。在
最好的方法是通过Configuring Amazon S3 Event Notifications触发进程B。上传新对象后,S3可以触发Lambda函数(或发送通知),然后执行第二步。在
我也可以上传到40GB。在
由于我要进行多部分上载,所以我会检查要写入的文件是否是
closed
。S3文件(对象)仅在所有操作完成时关闭。在另一种方法是使用类似芹菜的异步任务队列。任务完成后,您将收到通知。在
我现在使用Golang,但这两种方法对我都很有效。在
相关问题 更多 >
编程相关推荐