【问题标题】:Persist AWS Lambda state for sftp transfers为 sftp 传输保持 AWS Lambda 状态
【发布时间】:2019-09-07 03:30:33
【问题描述】:

您好,我想使用 Lambda 定期 SFTP 将某个文件传输到 AWS S3。我想通过 CloudWatch 事件来做到这一点。但是我只想过滤上传的新文件。
如何保存上次读取的文件信息?

【问题讨论】:

  • 目标是AWS S3,源是什么?
  • 我从 sftp 服务器获取文件
  • 您希望有几个 lambda 实例并行运行吗?还是限制为 1 个?
  • 不,只限于一个,接收CW事件并传输文件
  • 好的。那么为什么不只检查文件创建日期并以此来决定呢?无需额外服务

标签: amazon-web-services aws-lambda sftp


【解决方案1】:

您可以使用以下服务存储上次读取的文件信息:

  • dynamoDB 使用表(收费)
  • Parameter Store(在 System Manager 服务中)。

标准参数不花费任何成本,最大可达 4kB。

【讨论】:

    【解决方案2】:

    使用 Amazon Simple Queue Service (SQS) 并使用 Lambda 函数对其进行处理,队列将保存已处理/未处理文件的状态

    【讨论】:

    • 你的意思是一个队列,我通过同一个 lambda 消费和发布消息?没有过期时间?
    • 是的,例如在队列中,您将使用filename 和布尔值status 将您的任务保存为一个对象,您可以更新状态(或者只是删除已处理的文件)
    猜你喜欢
    • 2019-02-05
    • 1970-01-01
    • 1970-01-01
    • 2020-06-22
    • 2020-03-18
    • 1970-01-01
    • 2019-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多