Serverless Framework

less framework是一款开发框架,用户可以通过这款框架将自己的业务上云,优化云端资源的管理和配置方案,方便企业部署自己的业务,您可以在云端管理、COS和CAM等服务项目,让各种业务服务内容联动起来,为企业部署新的程序、部署新的网站、部署新的Serverless应用提供方便;软件提供多种基资源组件,使用不同的组件就可以构建新的云端资源管理方案,为企业构建云端资源提供帮助,优化本地项目上云的流程,快速将项目部署到云端使用,您也可以在软件调试应用,使用云函数组件就可以在云端调试您的项目!

相关推荐 软件介绍 下载地址
Serverless Framework官方版v2.37.0 lessfamewk是一款开发框架,用户可以通过这款框架将自己的业务上云,优化云端资源的管理和配置方案,方便企业部署自己的业务,您可以在云端管理、COS和CAM等服务项目,让各种业务服务内容联动起来,为企业部署新的程序、部署新的网站、部署新的Seveless应用提… 点击查看
富途牛牛官方版v11.8.9068 富途牛牛是一款对股票实时查询及查看的软件,可以在此软件看到股票的实时上浮/下浮,只需绑定自己的个人,一键开户就可以进行交易了,开户入金无限制,存入任意金额都可以立即交易,此软件是投资,持牌劵商,,投资者赔偿基金保障。可实时查看股票的报价,行情以及… 点击查看
UEStudio官方版v19 uesudi19最新版是一款功能非常强大的文本编辑软件,能够适用于前端和后台开发中的代码编辑工作,uesudi19作为该系列最新版本,页面非常整洁,各种编辑功能非常全面。UESudi19版特色支持类查看器、资源编辑器、集成Tags、智能提示、快速提示、功能/函数提示… 点击查看

Serverless Framework软件功能

Serverless Framework 是业界非常受欢迎的无应用框架,开发者无需关心底层资源,即可部署完整的 Serverless 应用架构。Serverless Framework 具有资源编排、自动伸缩、事件驱动等能力,覆盖编码、调试、测试、部署等全生命周期,帮助开发者通过联动云资源,迅速构建Serverless 应用。

Serverless Framework 主要支持以下几个开发场景:

一、基于云函数的命令行开发工具

通过 Serverless Framework,开发者可以在命令行完成函数的开发、部署、调试。还可以结合前端服务、 API 、数据库等其它云上资源,实现全栈应用的快速部署。

二、传统应用框架的快速迁移

Serverless Framework 提供了一套通用的框架迁移方案,通过使用 Serverless Framework 提供的框架组件(Egg/Koa/Express等),原有应用仅需几行代码简单改造,即可快速迁移到函数平台。同时支持命令行与控制台的开发方式。

简化配置

Serverless Framework 提供了丰富的软件应用生态(Component)供您搭建各种形态的 Serverless 应用。您只需几行配置描述,即可进行云函数、API 、COS、DB 等 Serverless 资源的快速创建、部署和修改,无需在各个云资源控制台手动开通服务和配置管理,彻底摆脱基设施的管理和,轻松交付 Serverless 应用。

方便运维

Serverless Framework 支持用户快速部署 Serverless 化的云服务,支持用户按需付费,并能够根据业务请求自动进行弹伸缩,让您可以从容面对业务请求峰值。您无需再提前手动配置计算资源,无需从零搭建自己的监控告警系统,完全免去传统的运维烦恼,并使得您付出的资源成本相比传统服务可节省超过 80% 。

一站式开发

Serverless Framework 打造了从初始化、编码、调试、资源配置和部署发布,到业务监控告警、故障排查的一站式解决方案。您可以快速创建 Serverless 应用,并完成应用的调试和部署,监控已发布应用运行状态并快速排障。

Serverless Framework软件特色

灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。

Serverless 应用的灰度发布是配置云函数别名的流量规则,针对别名中两个不同版本的云函数进行流量规则配置。Serverless Framework 支持的两种方式别名配置:默认别名和自定义别名。

默认别名

默认别名是配置云函数的 $deflt(默认流量)别名。该别名中固定有两个云函数版本,一个为 $latest 版本,一个为最后一次函数发布的版本。部署时配置的 traffic 参数为 $latest 版本流量占比,默认另一部分流量切到当前云函数最后一次发布的版本。

自定义别名

自定义别名可以通过命令创建别名,配置指定两个云函数版本配置流量比。

使用自定义别名进行灰度发布时,先将新功能发布到一个新版本上,修改别名配置,切部分流量在该版本上进行观察,最后逐步将流量切到该版本。

自定义别名提供了灵活的版本切换,配置相对于默认别名的方式更复杂,适用于对灰度发布能力要求比较高的业务场景。目前自定义别名只支持云函数组件。

Serverless Framework使用说明

函数触发器配置

支持触发器类型

在 SCF 组件中,支持配置不同类型的函数触发器,目前支持的触发器列表如下:

定时触发器

API 触发器

COS 触发器

Q 触发器

CKAFKA 触发器

其中,如果用户在 less.yml 文件中没有配置 API 的服务 ID 参数,则 SCF 组件会自动创建一个 API 的、服务,对于其他触发器,仅执行配置触发器,不涉及服务资源创建,请在使用前确保您已完成相关资源创建。

yml 文件参数配置详情

触发器配置为数组,按照配置的 name 和 param 创建触发器

parameters 参数的配置如下:

timer 触发器参数

示例:

cos 触发器参数

示例:

cmq 触发器参数

示例:

自定义域名及 HTTPS访问配

作场景

通过 Serverless Component 快速构建一个 Serverless Web 网站服务后,如果您希望配置自定义域名及支持 HTTPS 的访问,则可以按照本文提供的两种方案快速配置。

#前提条件

已经部署了网站服务,获取了 COS/API 的网站托管地址。具体部署方法参考 部署 Vue.js+Express.js 全栈应用 或 快速部署 Hexo 博客。

已拥有自定义域名(例如 www.example.com),并确保输入的域名已 备案。

如果需要 HTTPS 访问,可以申请证书并且 获得证书 ID (例如:certificateId : axE1bo3),个人站点可以直接申请 域名型(DV)免费SSL证书。

#方案一:通过 CDN 加速配置支持自定义域名的 HTTPS 访问

配置前,需要确保实名并已经 开通 CDN 服务。

#增加配置

在 less.yml 中,增加 CDN 自定义域名配置:

部署服务

再次通过sls deploy命令进行部署,并可以添加–debug参数查看部署过程中的。

如您的未 登录 或 注册 云,您可以直接通过微信扫描命令行中的二维码进行授权登录和注册。

?sls 是 less 命令的简写。

添加 CNAME

部署完成后,在命令行的输出中可以查看到一个以 .cdn.dnsv1.com 为后缀的 CNAME 域名。参考 CNAME 配置文档,在 DNS 服务商处设置好对应的 CNAME 并生效后,即可访问自定义 HTTPS 域名。

#方案二:对 API 域名进行自定义域名配置

#增加配置

在 less.yml 中,增加 API 自定义域名配置。本文以 egg.js 框架为例,配置如下:

部署服务

再次通过sls deploy命令进行部署,并可以添加–debug参数查看部署过程中的。 如您的未 登录 或 注册云,您可以直接通过微信扫描命令行中的二维码进行授权登录和注册。

? sls 是 less 命令的简写。

添加 CNAME 记录

部署完成后,在命令行的输出中可以查看到一个以 .apigw.tencentcs.com 为后缀的 CNAME 域名。参考 添加 CNAME 记录,在 DNS 服务商处设置好对应的 CNAME 并生效后,即可访问自定义 HTTPS 域名。

使用层部署

由于云函数限制,目前只支持上传小于 50MB 的代码包,当您的项目过大时,您可以将依赖放在层中而不是部署包中,可确保部署包保持较小的体积。层的具体使用请参考 层管理相关作。

#作步骤

#创建层

新建层并上传依赖,您可以通过以下两种方式作:

通过 Serverless 应用控制台 直接创建

使用 Serverless Framework 的 Layer 组件(参考 Layer 组件)

#使用层

您可以通过控制台配置和本地配置两种方法,在项目配置中使用层部署,具体如下:

#控制台配置

对于 Node.js 框架应用,Serverless Framework 会自动为您创建名为 ${appName}-layer 的层,并自动帮您把应用的依赖项 node_modules 上传到该层中。

导入已有项目时,您也可以选择使用新建层或已有层完成部署,选择新建层时,Serverless Framework 会自动帮您把应用的依赖项 node_modules 上传到该层中。

新建层作仅支持 Node.js 框架,其它框架使用层时,请确保已经完成层的创建并已经把相关依赖想上传到层中。

#通过 Layer 组件配置

1、此处以 Next.js 组件为例,调整本地项目目录,新增 layer 文件夹,并创建 less.yml 文件,完成层的名称与版本配置,yml 模版如下:

更新后的项目目录结构如下:

2、打开项目配置文件,增加 layer 配置项,并引用 layer 组件的输出作为项目配置文件的输入,模版如下:

在项目根目录下,执行 sls deploy3、,即可完成 Layer 的创建,并将 Layer 组件的输出作为 Next.js 组件的输入完成层的配置。

静态资源托管配置

作场景

当项目中的静态资源过多时,直接部署会导致每次请求页面时,所有的静态资源也要进行重新请求与加载,使得应用的单位时间并发数会根据页面静态资源请求数而增加,从而造成冷启动问题。Serverless SSR 支持使用静态资源托管来存储您的静态资源,缩短冷启动时间。

#配置流程

#控制台配置

#模版部署

通过模版创建时,Serverless Framework 已提前在模版中完成了静态资源的配置,并默认开启,您无需进行任何改造作,即可创建一个使用静态资源托管的 SSR 应用。

创建流程:创建过程中,Serverless Framework 会自动为您创建一个新的 COS 存储桶,并将项目中自动将编译生成的 .next(或 .nuxt)和 public 文件夹静态资源上传到该 COS,使得静态资源均通过访问 COS 获取,无需重复请求云函数获取静态资源。

#导入已有项目

导入已有项目时,除了在控制台开启”静态资源托管”功能外,您还需对您已有项目进行如下改造: 1. 在项目目录下,创建 next.config.js 配置文件(nuxt 项目配置文件名为 nuxt.config.js)。 2. 在配置文件中加入如下内容:

改造完成后,将已有项目导入并完成部署,Serverless SSR 会自动帮您注入生成的静态文件托管 L,完成静态资源托管的配置。

#命令行部署配置

如果您使用 Serevrless Framework 命令行工具完成项目开发,静态资源托管配置步骤如下:

1、选择静态资源存储桶,获取存储路径。

您可以通过 COS 控制台 或 Serverless COS 组件 快速创建您的存储桶,也可以选择已有存储桶,创建完成后通过 COS 控制台 的存储桶概览页获取存储桶路径。

2、创建配置文件 next.config.js(nuxt 项目配置文件名为 nuxt.config.js),填入以下内容,STATIC_L 改为您存储桶的 L 路径:

3、在 less.yml 中`,新增静态资源相关配置 staticConf,如下:

4、修改好配置后,在根目录下执行 less deploy ,完成部署

上一篇 2023-02-16
下一篇 2022-12-31

相关推荐

  • Serverless Framework

    less framework是一款开发框架,用户可以通过这款框架将自己的业务上云,优化云端资源的管理和配置方案,方便企业部署自己的业务,您可以在云端管理、COS和CAM等服务项...
正在提交中,请稍等片刻...

发表回复

请登录后评论...
登录后才能评论

评论列表 (0条)