写一个Serverless函数
接下来我们就以AWS的Serverless函数计算Lambda服务为例,介绍一个Serverless HelloWorld函数怎么运行的。
首先我们创建一个函数:
创建一个函数只需要两个最基本的参数,一个是函数名称,另一个是运行环境,这里我们选择Python 3.8。我们发现根本不需要告诉它需要运行在虚拟机还是容器,也不需要告诉它运行到底需要多少CPU、多少内存,因为这一切都是透明的,用多少分多少。
但需要注意,这里说的理论上是不需要提前分配CPU和内存,但事实上仍需要对其使用的资源进行限制,否则你的应用如果存在内存泄露或者fork炸弹,则会导致资源浪费。因此AWS Lambda都会配置默认的内存限制128MB以及超时时间3秒,用户可以手动调节这些参数。
接下来我们就可以上传或者在线写代码了,这里我们的HelloWorld函数很简单,仅打印HelloWorld!以及返回"hello"字符串。
def lambda_handler(event, context):
print("HelloWorld!")
return "hello"
我们点击Test按钮就可以运行我们的代码了:
输出如预期那样打印了HelloWorld!并且函数返回了字符串"hello"。
所以Serverless就是这么简单,不是吗?