同步 S3 存储桶并监听更改

rus*_*off 3 amazon-s3 spring-integration spring-boot spring-integration-aws

我有一个 AWS S3 存储桶,每周都会在其中放置一个新的 ZIP 文件。

我想向使用 Spring Boot 编写的现有 Web 服务添加一项功能:在本地同步存储桶并监视更改。

目前,同步效果良好:每当将新文件添加到存储桶时,都会将其下载到本地。但是,我不知道监听文件更新,这是一种在本地下载新文件时触发的方法。能做到吗?

这是我的一段代码:

#  --------
# | AWS S3 |
#  --------
s3.credentials-access-key=***
s3.credentials-secret-key=****
s3.bucket = my-bucket
s3.remote-dir = zips
s3.local-dir = D:/s3-bucket/
Run Code Online (Sandbox Code Playgroud)
#  --------
# | AWS S3 |
#  --------
s3.credentials-access-key=***
s3.credentials-secret-key=****
s3.bucket = my-bucket
s3.remote-dir = zips
s3.local-dir = D:/s3-bucket/
Run Code Online (Sandbox Code Playgroud)

Ash*_*pin 5

您可以使用 S3 事件通知和 SQS 队列。基本上,当将对象添加到存储桶时,S3 可以将事件发布到已注册的 SQS 队列。然后,您可以让本地应用程序长时间轮询队列以查找新事件并处理添加的任何事件。

浏览此处获取更多信息。