aws serverless python_如何在S3上存储大型Python依赖项(对于具有Serverless的AWS Lambda)...

我使用awslambda托管一个Python项目,使用Serverless框架管理部署,并且遇到了通常达到50MB的包存储限制。到目前为止,我已经成功地将我的需求划分为每个函数,分别使用serverless python和serverless python需求插件将每个文件作为一个单独的Lambda函数进行dockerise、压缩和上传,如我的无服务器.yml文件,如下所示。在

这使得前三个函数包保持在50MB以下,并创建了一个简单的工作流,在这个工作流中,我可以简单地使用:sls deploy --pi-dockerizedPip来推送更改。但是,第四个包只需要SciPy,不能减少到52MB以下,在阅读了大量之后,我看到的唯一常见方法是上传我的依赖项(ies?)以某种方式确保我的import语句能够找到依赖关系。在

我还没有找到明确的说明,说明这个打包依赖性的过程应该如何完成,以及(几乎同样重要)如何与Serverless一起工作(这样我就可以保持良好的工作流程)?在

的关键部分无服务器.yml:package:

individually: True

exclude:

# Exclude everything first.

- '**/*'

functions:

brain:

handler: src/1-brain/wrap.handler

package:

include:

- src/1-brain/**

events:

- schedule: rate(5 minutes)

data:

handler: src/2-data/wrap.handler

package:

include:

- src/2-data/**

strategy:

handler: src/3-strategy/wrap.handler

package:

include:

- src/3-strategy/**

balancer:

handler: src/4-portfolio-balancer/wrap.handler

package:

include:

- src/4-portfolio-balancer/**

custom:

pythonRequirements:

useDownloadCache: true

useStaticCache: true

dockerizePip: true

zip: true

slim: true

pyIndividually:

wrap:brain: src/1-brain/aws_handler.handler # mapping to the real handler

wrap:data: src/2-data/datafeed.handler # mapping to the real handler

wrap:strategy: src/3-strategy/strategy.handler # mapping to the real handler

wrap:balancer: src/4-portfolio-balancer/balancer.handler # mapping to the real handler

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值