前言
之前听到一个讲座说到AWS Lambda服务,基于Serverless无服务模型,另外官网还免费提供 100 万个请求 按月,包含在 AWS 免费套餐中是真的很香,对于一些小型的起步的网站或者用户量不大的网站,简直就是免费,实在太好了。
AWS Lambda是一个无服务器事件驱动型计算服务,你可以运行几乎任何类型的应用程序或后端服务的代码,而无需预置或管理服务器。您可以从 200 多个 AWS 服务和软件即服务 (SaaS) 应用程序中触发 Lambda,且只需按您的使用量付费。
操作步骤
创建服务
创建服务这里可以有几种类型选择,可以自己选择从0到1开始写,也可以使用模版方式,初始化最初的代码,另外还可以使用容器的方式来部署函数。
测试函数
当创建Lambda函数完成之后,你可以看到代码可以自由的编辑,然后测试完成之后点击部署,他就发布了,如果你有本地的代码编辑器,也可以直接上传本地代码到编辑器里面再部署。
请求执行,这里可以配置对应的参数测试接口或者函数方法是否正常,还可以看到日志输出情况。
demo请求参数
{
"key1": "hello",
"key2": "world",
"key3": "python"
}
日志输出情况
函数触发器
本示例创建的是一个python的函数示例,但是需要外部访问就需要配置请求接口,可以创建一个函数触发器,通过api请求来调用对应的函数。对web应用程序非常友好,常见的web程序都是,一个请求一个响应。
配置函数URL,你可以在这里配置token和是否跨域等一些权限控制。
测试api的请求,其链路和日志测试,对用户操作非常的友好,一目了然。
监控
这监控也非常的实时,请求的接口里面会在这里看到结果,又少了部署监控程序的繁琐步骤,只需要配置一下就可以看到请求的相关详细情况,可以看到程序的实时运行情况还是非常友好的。
总结
AWS Lambda是一个Serverless计算服务。它允许开发人员在云中运行代码,而无需管理服务器。你可以编写函数并将其上传到Lambda服务,然后根据需要触发执行这些函数,当程序没有请求响应时不占用空间和计算,程序会挂起等待请求,当有请求过来的时候会开始拉起Lambda服务,调用其中的函数执行逻辑代码,AWS Lambda自动处理底层基础架构细节,例如资源调配、自动缩放和高可用性,使开发人员能够专注于编写代码和实现业务逻辑。
AWS Lambda非常适合那些小型项目,用户刚开始积累的时候不需要承担太多的运营成本,按量付费和免费的请求次数,对那些刚开始创建的网站特别友好,又一次把计算机的利用率发挥到最优。
引用
AWS Lambda云计算服务介绍_如何使用AWS Lambda-AWS云服务
Run a Serverless "Hello, World!" with AWS Lambda
Tutorial: Using an Amazon S3 trigger to invoke a Lambda function - AWS Lambda