Serverless Devs是一个开源开放的Serverless开发者平台,您无需关心底层资源。通过Serverless Devs,您不仅可以可插拔式地使用Serverless的服务和框架,也可以参与组件和插件的开发,提高运维效率。同时,您也可以更简单、快速地开发、创建、测试和部署项目,实现项目全生命周期的管理。

优势

Serverless Devs与其他开发者工具不同,可以更灵活开放的使用,具体优势如下所示:
  • Serverless Devs通过s.yml文件对项目进行资源描述时,不仅可以对函数计算、API网关和对象存储等资源进行描述,也可以通过Serverless Devs提供的插件和Hook对项目进行安装、构建和发布等行为描述。
  • Serverless Devs不仅不会对每个组件的命令进行限制,而且还鼓励开发者针对不同的组件,开发不同的能力来应对更多、更复杂的场景。例如阿里云函数计算组件,不仅支持函数的部署和移除等传统命令,而且还支持日志查询、指标查询、本地构建、依赖安装和调试等更多定制化命令。
Serverless Devs灵活与开放的使用方法,可以在自动化部署、运维等领域发挥比较大的作用。将Serverless Devs与项目全生命周期进行有机融合,使Serverless项目开发运维效能可提升90%。

工具组件

基于Serverless Devs,阿里云函数计算团队为您提供了多种组件,其中,与函数计算相关的组件主要有FC组件和FC-API组件,说明如下。

FC组件

FC组件是一个用于支持阿里云Serverless应用全生命周期的工具。该组件是Funcraft工具的进阶版本,和Funcraft工具的行为描述类似,该工具通过资源配置文件即s.yml,可以快速帮助您开发、构建、测试以及将应用部署到函数计算。

  • FC组件的使用形态:
    • YAML模式

      使用阿里云函数计算组件的YAML规范即s.yml文件定义Serverless资源。其包含函数计算服务、函数、触发器以及自定义域名等资源。阿里云函数计算组件的YAML规范的详细信息,请参见YAML规范

    • 纯命令行模式

      您可以通过FC组件命令行完成Serverless应用的开发部署。该命令行可以帮助您校验s.yml文件、构建函数、本地调试函数和部署函数至函数计算并对其进行观测。

  • FC组件的优势:
    • 简洁:FC组件使用一键式的部署模式进行创建、更新服务等资源。同时,为了保证组件使用的流畅性,所有的功能均是按需加载。
    • 高效性:FC组件具备开发和运维态能力,支持部署、移除功能,也支持在本地进行构建、端云联调、查询信息、安装依赖和调试等功能,提升开发、测试的效率。
    • 多样化部署:FC组件目前支持Pulumi和SDK部署模式。
说明 FC组件适用于所有部署函数计算应用的场景,例如迁移传统框架到函数计算、管理函数等。

FC组件的基本功能,详细信息,请参见依赖YAML文件的使用指南纯命令模式的使用指南

关于FC组件的权限管理,请参见YAML相关权限配置命令行相关权限配置

FC-API组件

FC-API组件是一款基于Serverless Devs的阿里云函数计算API操作工具。该组件是fcli的进阶版本,和fcli的行为描述类似,因此称为FC-API组件,所以您可以直接通过交互式命令进行函数计算相关API的使用。

FC-API组件的优势:
  • 由于是关于函数计算API的相关操作,所以在使用的过程中更容易管理权限,甚至可以细化到单个接口的权限管理。
  • 由于是纯命令式的,不依赖s.yml文件描述资源,所以在自动化流程中,例如CI/CD工具、场景下的使用中更便捷。
  • 支持函数管理能力,例如查询服务列表、函数列表或触发器列表,也支持增删改查相关资源。
FC-API组件的适用场景
  • 自动化流程

    由于FC-API组件是纯粹通过命令行进行开发的,无需依赖s.yml文件,所以在使用的过程中,可以通过参数的传递实现某些功能,而且这些功能相对来说都是原子性的,更容易做权限管理和自动化流程。您可以直接通过单个命令实现某些操作,例如更新函数代码、更新函数配置、更新服务、创建触发器和更新别名等。

  • 管理函数

    FC-API组件是基于阿里云函数计算API的命令行工具,具备已有的资源管理能力。例如可以更新服务、删除服务、查看服务列表、函数列表或触发器列表等。

关于FC-API组件的权限管理,请参见FC-API组件权限信息

相关信息