ServerLess
来源:Node.js
ServerLess
ServerLess不是一种技术,而是一种架构模型,称为无服务器架构
在传统模式下,部署一个服务需要选择服务器例如Linux、windows等,还要安装环境、熟悉操作系统命令、知晓安全知识等,有一定成本
而ServerLess的核心思想就是,让开发者更多的是关注业务本身,而不是服务器运行成本
Faas
全称函数即服务,是一种Serverless计算模型,它允许开发人员编写和部署函数代码,而无需关心底层的服务器管理
在FaaS中,每个函数即一个服务,开发人员只需关注函数的实现和逻辑,无需关心背后计算资源的问题
将其上传到云平台上后,平台会负责函数的运行和扩展
当有请求触发函数时,云平台会自动为函数提供所需的计算资源,并根据请求量进行弹性扩展
这种按需计算的模式使开发人员可以更专注于业务逻辑的实现,同时实现了资源的高效利用
Baas
全称后端即服务,是一种提供面向移动应用和Web应用的后端功能的云服务模型
BaaS为开发人员提供了一组预构建的后端服务,如用户身份验证、数据库存储、文件存储、推送通知等,以简化应用程序的开发和管理
开发人员可以使用BaaS平台提供的API和SDK,直接集成这些功能到应用中,而无需自己构建和维护后端基础设施
编写
依赖
1 | pnpm install @serverless-devs/s -g |
身份验证
首先需要阿里云或别的什么云函数服务的密钥,在RAM 访问控制中创建一个新角色
给这个用户添加函数计算相关的权限:
在这个用户的信息中创建并保存好AccessKey
初始化
配置ServerLess用户,会弹出一系列选项,根据实际情况填写即可
1 | s config add |
创建项目
1 | s |
新项目的模板,函数体与配置文件
1 | ; |
1 | # ------------------------------------ |
阿里云ServerLess的Node.js环境提供了许多API,例如可以在其中调用阿里云的其他服务模块
上传云函数
1 | s deploy |
上传成功后,就可以在控制台看到云函数了,记得把地点切换为之前设置的地点
接口url在这里拿,也可以设置一个自定义域名