最近,我使用无服务器框架来创建/部署AWS lambda函数/ API网关。这是部署Lambda / API的一种非常酷的方法,但是我不知道如何将其应用于现有的AWS Lambdas / API。
有什么方法可以做到,而不必删除现有的,然后使用无服务器重新创建,因为我有数十个现有的lambda函数和api。
答案 0 :(得分:0)
不。您可以通过在Serverless.yml中指向这些函数的特定ARN来重用lambda函数,但是如果没有使用Serverless的手动干预和重新创建,当前无法“替换” API Gateway组件。
好处是,除非您使用目前无服务器框架不支持的AWS API Gateway中的功能,否则它应该相对简单易行。
答案 1 :(得分:0)
随着您的应用程序的增长,您可能需要将其分解为多个更小的服务。默认情况下,每个 Serverless 项目都会生成一个新的 API 网关。但是,您可以通过在 serverless.yml
中引用其 REST API ID 和根资源 ID 来在多个项目之间共享同一个 API 网关,如下所示:
service: service-name
provider:
name: aws
apiGateway:
restApiId: xxxxxxxxxx # REST API resource ID. Default is generated by the framework
restApiRootResourceId: xxxxxxxxxx # Root resource, represent as / path
websocketApiId: xxxxxxxxxx # Websocket API resource ID. Default is generated by the framework
description: Some Description # optional - description of deployment history
functions: ...