gpt4 book ai didi

node.js - AWS Lambda 开发工作流程

转载 作者:搜寻专家 更新时间:2023-11-01 00:03:47 24 4
gpt4 key购买 nike

我已经使用 AWS 一段时间了,但我想知道如何使用 Lambda 进行开发。我非常喜欢拥有无服务器功能并让亚马逊处理维护工作,并且已经使用了一段时间。我的问题:是否有推荐的版本控制和开发工作流程?

我知道可以在 Lambda 中发布新版本。并且您可以指向调用它的服务中的特定版本,例如 API 网关。我看到 API Gateway 也有一些很好的功能来区分谁调用哪个版本。即拥有一个测试 API 并缓慢滚动更新,比如 10% 的生产 API 调用并缓慢扩展。

但是,对于实际的版本控制系统来说,这感觉有点笨拙。也许这些功能是在本地编码并使用 AWS CLI 上传的,然后一切都通过第三方版本控制系统(Github、Bitbucket 等)进行管理?我可以通过这种方式部署到函数的新版本或现有版本吗?这样我就可以保持测试和生产功能的分离。

通过 Lambda 中的编辑器进行开发也感觉不太好。更不用说使用自定义包仍然需要上传。似乎本地开发是更好的解决方案。尝试了解其他人的工作流程,以便改进我的工作流程。

根据您的经验,您是如何解决这个问题的?

最佳答案

我编写了大约十几个基于 S3 文件写入事件或时间触发的 lambda 函数,并向 API 发出 HTTP 请求以启动数据处理作业。

我认为没有任何黄金标准。根据我的研究,那里有各种方法和框架。我决定不想依赖任何类型的框架,例如 Serverless 或 Apex,因为我不想在学习 Lambda 的基础上学习如何使用这些东西。相反,我在开发功能时根据自己的需要有机地进行了改进。

为了回答您的问题,这是我的工作流程。

  1. 本地开发和 git 提交更改。
  2. 模拟测试数据并使用 mocha 和 chai 在本地进行测试。
  3. 运行一个 bash 脚本来创建一个 zip 文件压缩文件以部署到 AWS lambda。
  4. 将 zip 文件上传到 AWS lambda。

关于node.js - AWS Lambda 开发工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54698106/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com