[英]Development, Staging and Production environments in serverless solutions (AWS)
我使用 flask + postgreSQL 开发了一个 API,用户注册过程由此类基础设施负责。 然后我决定总体上改变基础设施。 我决定使用 NestJS + dynamoDB + cognito。 换句话说,我决定 go 无服务器,但是,我发现很难理解如何将我的项目组织到开发中。 登台和生产环境。
总结一下,我有两个问题
我会为每个问题举一个例子,以澄清我的疑惑。
(1) 的示例
在使用 flask + postgreSQL 的第一个架构中,我创建了一个脚本,该脚本将清除整个本地数据库并创建一个模拟数据,目的是执行函数,以便可以测试 API。 但是由于我没有本地环境,我是否应该将整个生产环境复制到 AWS 中以进行测试?
(2) 的示例
通常当我在 API 中测试新功能时,我会擦除并创建新的模拟数据,而我的同事会在他们的本地机器上做同样的事情。 换句话说,每个开发人员都准备好他们的本地系统,可以在不影响其他开发人员工作的情况下“搞砸”哈哈。 我怎么能在 dynamoDB/无服务器架构中做类似的事情?
如果您的测试涉及写入和读取到表的数据量相对较少,您可以使用真正的 AWS 进行测试,但只需使用与生产表不同的表(可能还有不同的帐户)。 可以在几秒钟内创建和删除测试表。
但是,如果测试涉及大量数据,这种方式的测试可能会变得昂贵且缓慢——在这种情况下,您可能更愿意在自己的机器上运行本地版本的 DynamoDB 并在测试中连接到该机器。 据我所知,您必须选择本地安装的 DynamoDB:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.