【发布时间】:2021-10-05 07:12:30
【问题描述】:
我在 S3 存储桶中有一组文件,我希望多个客户端通过下载和删除文件来处理这些文件,以便在本地处理它们。
如何确保只有一个客户端可以访问任何单个文件,以便只有一个工作人员下载并处理它?我知道我可以引入一个额外的队列系统或其他外部进程来实现某种 FIFO 队列或锁定机制,但我真的希望在这里尽量减少组件的数量,所以它很简单
(file_generation -> S3 -> workers) 无需添加更多系统来管理或可能破坏的东西。
那么有没有办法获得一个文件的锁或以某种方式为单个工作人员自动标记它,以便其他工作人员知道忽略它?也许用工作人员的 ID 重命名对象的键,以便“认领”并且没有其他人会碰它?
【问题讨论】:
标签: c# amazon-web-services amazon-s3 queue