1。简介
aws lambda是一种无服务器的计算解决方案,它允许您在不需要服务器配置或管理的情况下运行代码。您只为使用的计算时间付费。这表明我自己的项目将无法获得很多流量,这是AWS Lambda的绝佳选择。此用例是可变流量或可以扩展为零的应用程序的理想选择。
2。先决条件
IAM角色/IAM用户具有足够的权限。
AWS CLI安装
python3
AWS CLI
git
3。 AWS Resources
您需要下面列出的AWS资源。
aws iam角色
AWS lambda
AWS API网关
AWS DynamoDB
4。体系结构
您可以使用AWS控制台手动创建资源,也可以使用Terraform,AWS SAM/CloudFormation等任何IAC选项来利用此资源。在本文中,您将使用AWS控制台将事物更容易
5。部署步骤
步骤-1-创建一个角色(按照您的意愿命名并添加权限)
step -2-创建一个lambda函数(按照您的意愿将其命名,选择最新的Python版本作为运行时)
Python代码可以在此处找到:
git克隆https://github.com/Assassin010/CRUD-Serverless-API-Python-G.git
git克隆https://Assassin10@bitbucket.org/assassin10/crud-serverless-api-python-b.git
git克隆https://gitlab.com/Assassin010/CRUD-Serverless-API-Python-L.git
步骤-3-构建REST API
创建3个资源
路径 /健康的健康
产品路径 /产品
产品路径 /产品< /p>
步骤-4
为每个资源创建方法
-
在健康资源上,创建“获取”方法
-
在产品资源上,创建“ get”,“ post”,“ patch”和
“删除” -
在产品资源上,创建“ get”
检查所有资源上的所有方法的所有框,并选择了您创建的lambda(步骤-2)
步骤-5部署API
步骤-6创建DynamoDB表
6。测试所有API
帖子:对于单个产品
{
"productId": "bag",
"color": "black",
"price": "100",
"quantity": "1500"
}
获取:对于单个产品
补丁:对于单个产品
删除:对于单个产品
获取多个产品:
注意:在尝试获取所有产品之前,您将需要几个产品。
7。参考
https://aws.amazon.com/lambda/
https://aws.amazon.com/api-gateway/
https://aws.amazon.com/dynamodb/
https://aws.amazon.com/cloudwatch/
https://boto3.amazonaws.com/v1/documentation/api/latest/index.html
快乐的编码!
end-â-——————————— --—————————— ---
如果您喜欢我的作品并想支持我
最好的方法是在此处关注我
随时提供喜欢或写评论,所以我知道这篇文章对您有多帮助。
gauthier kwatatshey__
在LinkdIn上与我联系