文件名称:sftp-lambda:无服务器lambda函数可在AWS S3和SFTP服务器之间同步文件
文件大小:576KB
文件格式:ZIP
更新时间:2024-06-05 22:50:23
JavaScript
sftp-lambda 无服务器lambda用于在AWS S3和SFTP服务器之间同步文件。 灵感来自 内容 推送(S3-> SFTP) pushRetry(S3-> SFTP) 顺序图 状态转换push和pushRetry的有效状态转换 特性和用例 您不想运行自己的SFTP服务器或支付服务费用 第三方提供了一个SFTP服务器,您需要在其中推送/拉出文件 您总是发起连接(推动或拉动),而不是第三方 此解决方案适用于批量处理,不适合流式传输紧迫不需要您拉出的数据,例如,您很高兴每半小时或更不频繁地拉出一个文件 便宜的 比AWS Transfer for SFTP便宜 便宜很多,如果你并不需要一个静态IP地址白名单为FTP服务器上 这只是Lambda执行的代价 但这是不推荐的最佳做法是使用静态IP并将其列入白名单 至少便宜五倍,即使您确实需要固定IP 固定IP的主要成本是NAT网
【文件预览】:
sftp-lambda-master
----.eslintrc.json(183B)
----.gitignore(288B)
----package.json(2KB)
----serverless.yml(4KB)
----configuration-examples()
--------vpc()
--------serverless.yml(556B)
----integration-test()
--------.env(78B)
--------serverlessGetSSHTestKey.js(596B)
--------docker-compose.yml(345B)
--------init-test-data.sh(467B)
--------lib()
--------integration-test.js(6KB)
--------init-ssh-key.sh(520B)
----.nvmrc(7B)
----LICENSE(729B)
----__mocks__()
--------mock-helpers()
--------ssh2-promise.js(1KB)
--------aws-sdk.js(298B)
----.github()
--------workflows()
----README.md(12KB)
----.eslintignore(24B)
----.env.local(68B)
----manual-pull-test()
--------pull.js(458B)
--------.env(36B)
--------docker-compose.yml(251B)
--------README.md(59B)
--------docker_sftpd.sh(615B)
----.vscode()
--------launch.json(1KB)
----diagrams()
--------activity.xml(6KB)
--------sequence.xml(4KB)
--------state.md(5KB)
--------vpc.png(58KB)
--------state.png(232KB)
--------vpc.xml(3KB)
--------activity.png(58KB)
--------sequence.png(58KB)
----handlers()
--------push.test.js(6KB)
--------pull.js(1KB)
--------pushRetry.js(894B)
--------pull.test.js(11KB)
--------push.js(658B)
--------lib()
--------pushRetry.test.js(3KB)
----.yarnrc(15B)
----sample-events()
--------s3SamplePutEvent.json(183B)
--------cloudwatch-events-notification.json(299B)
--------cloudwatch-poll.json(299B)
--------john-s3-notification.json(1KB)
--------test2.cloudwatch-events-notification.json(300B)
----yarn.lock(317KB)