我将AppSync
与Lambdas
一起使用。为此,我使用了serverless framework
。
对于您使用无用项目的开发/测试/生产版本管理无服务器项目的方式,我几乎没有疑问。
我目前使用--stage
之类的sls deploy -s test
选项来拥有多个版本。但是,如果部署后出现问题,我将无法rollback
,所以我想知道是否应该一直使用新名称进行部署并在以后删除预览版本吗?
编辑:我发现this应该适用于lambda,但是对AppSync有用吗?
您如何管理AppSync和Lambdas的开发/测试/生产版本?
答案 0 :(得分:0)
使用API版本会很不错,除非没有跨API订阅。您在一种API中进行的更改不会触发另一种API中的订阅。我希望AppSync能够支持某种API版本控制。
不确定无服务器回滚是否可以与AppSync一起使用,他们可能应该这样做。但是,它仅使用无服务器的S3存储桶缓存,而不是CloudFormation功能。因此,您几乎可以使用版本控制来回滚更改并重新部署(您的用例可能会有所不同)。
我们确实在一个AWS账户中具有开发和测试阶段,而在另一个AWS账户中具有生产和测试阶段。在测试阶段,我们可以先测试API是否正常运行,然后再将其部署到生产环境中。
对于我们的其他部署,我们还需要在生产前进行beta阶段,但是对于AppSync,由于跨API订阅问题,这是不可能的。我们无法通过Beta API在生产中更改某些数据,也不能在生产API中触发订阅。