详情页标题前

腾讯云Serverless应用中心应用管理-同尘科技

详情页1

简介

每执行一次 scf deploy,即部署一个 serverless 应用。一个 serverless 应用是由单个或者多个组件实例构成,每个组件对应一个实例。每个实例都会涉及一个 serverless.yml 文件,该文件定义了组件的一些参数,这些参数在部署时用于生成实例的信息。例如 region,定义了资源的所在区。单实例应用与多实例应用在项目组织上会有一些差别,如下图所示:

腾讯云Serverless应用中心应用管理-同尘科技



单实例应用

项目中只引入一个组件,部署时只生成一个组件实例,这样的应用为单实例应用。单实例应用一般不需要关心应用名称配置,如果有需要自定义应用名称,可直接在组件的 serverless.yml 中配置。

多实例应用

项目中引入多个组件,部署时生成多个组件实例,这样的应用为多实例应用。多实例应用需要自定义应用名称,以保证所有组件在统一的应用下进行管理。一般会把应用名称定义在项目目录的 serverless.yml 中,以便所有的组件继承同一个应用名。

serverless.yml 文件

serverless.yml 文件中定义了应用组织参数及组件 inputs 参数,每次部署时会根据 serverless.yml 文件中的配置信息进行资源的创建、更新和编排。一份简单的 serverless.yml 文件如下:

# serverless.yml
# 应用信息app: expressDemoApp # 应用名称,默认为与组件实例名称stage: ${env:STAGE} # 用于开发环境的隔离,非必填,默认为 dev# 组件信息component: express # (必填) 引用 component 的名称,当前用到的是 express-tencent 组件name: expressDemo # (必填) 组件创建的实例名称
# 组件配置inputs: src: src: ./ exclude: - .env region: ap-guangzhou runtime: Nodejs10.15 functionName: ${name}-${stage}-${app} #云函数名称 apigatewayConf: protocols: - http - https environment: release

yml 文件中配置信息:

应用信息

参数 说明
org 组织信息,默认腾讯云 APPID。保留字段,不建议使用。
app 应用名称,默认与组件信息中的实例名称一致。对于单实例应用和多实例应用 app 参数的定义方式会有不同,详情请参见 部署应用。
stage 环境信息,默认为 dev。通过定义不同的 stage,为 serverless 应用开发、测试、发布提供独立的运行环境。详情请参见 环境隔离。

组件信息

参数 说明
component 引用 component 的名称,scf registry 查询您可以引入的组件。
name 创建的实例名称,每个组件在部署时将创建一个实例。

参数信息

inputs 下的参数为组件配置参数,不同的组件参数不同。为保证环境隔离,资源唯一,组件资源名称默认会采用 ${name}-${stage}-${app} 格式。

部署应用

单实例应用

serverless.yml 文件中不配置应用名称 app,部署时会默认生成与实例名称 name 相同的 app 应用名称。例如创建一个 SCF 项目,项目目录如下:

scfDemo |- index.js └── serverless.yml

其中 serverless.yml 文件配置如下:

component: scfname: myscf
inputs: src: ./ runtime: CustomRuntime region: ap-guangzhou functionName: ${name}-${stage}-${app} #云函数名称
events: - apigw: parameters: endpoints: - path: / method: GET

在 scfDemo 目录下执行 scf deploy 进行部署,默认将生成一个 app 为 myscf 的应用,该应用下包含一个叫 myscf 的 SCF 实例。对于单实例应用项目,一般使用默认应用名称即可。如果要自定义应用名称,可直接在 serverless.yml 中定义,如:

app: scfApp #自定义 app 为 scfApp
component: scfname: myscf
inputs: src: ./ runtime: CustomRuntime region: ap-guangzhou
events: - apigw: parameters: endpoints: - path: / method: GET

在 scfDemo 目录下执行 scf deploy 进行部署,将生成一个 app 为 scfApp 的应用,该应用下包含一个叫 myscf 的 SCF 实例。

多实例应用

项目包含多个组件,必须给所有组件统一应用名称。一般我们会在项目根目录下定义一个 serverless.yml 文件进行应用名称配置。例如部署 Vue + Express + PostgreSQL 全栈网站,项目目录如下:

fullstack |- api |   |- scf.js |   |- ... | 	 └── serverless.yml |- db | 	 └── serverless.yml |- frontend |   |- ... | 	 └── serverless.yml |- vpc | 	 └── serverless.yml |- scripts └── serverless.yml

项目目录 fullstack 下的 severless.yml 文件配置了 app:

# 项目应用信息
app: fullstack

每个组件目录下的 severless.yml 文件配置了组件信息和参数信息,如 api 目录下的 serverless.yml:

#api 配置信息
component: expressname: fullstack-api
inputs: src: src: ./ exclude: - .env functionName: ${name}-${stage}-${app} region: ${env:REGION} runtime: Nodejs10.15 functionConf: timeout: 30 vpcConfig: vpcId: ${output:${stage}:${app}:fullstack-vpc.vpcId} subnetId: ${output:${stage}:${app}:fullstack-vpc.subnetId} environment: variables: PG_CONNECT_STRING: ${output:${stage}:${app}:fullstack-db.private.connectionString} apigatewayConf: enableCORS: true protocols: - http - https

说明 旧版本的模板示例中,会把应用名称 app 写到每个组件里,前提必须保证项目下所有组件的应用名称一致,后续不建议此使用方式。
官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/148984.html

(0)
上一篇 2023年12月9日 下午1:11
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云TDSQL-C MySQL版查看并行查询

    TDSQL-C MySQL 版支持查看并行查询的执行计划,以及查看线程中哪些线程在执行并行查询计划。您可清晰了解到并行查询是如何在数据库中稳定生效,也可在并行查询执行过程中遇到问题时,帮助快速定位问题。本文为您介绍查看并行查询的两种常用方法。 方法一:使用 EXPLAIN 语句 示例 SQL 语句: SELECT l_returnflag, l_linest…

    腾讯云 2023年12月9日
  • 腾讯云云直播步骤三:输出

    当您完成编辑,即可启动输出,云导播台还支持录制、转推等功能,丰富下游直播体系。 前提条件 已为导播台 添加输入源。已对导播视频进行 导播编辑处理。 步骤1:启动输出 1. 如果预监效果满足您的要求,您可以单击推送到直播启动输出。注意: 输出使用的输入源或布局上将出现红色框的主监状态提示。推送到直播后即开始正式输出并计费。关闭导播控制台不会断开直播和 PGM …

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储提交网页审核任务

    功能描述 本接口用于提交一个网页审核任务。网页审核功能为异步任务方式,您可以通过提交网页审核任务审核您的网页文件,然后通过 查询网页审核任务接口 或 网页审核回调 查询审核结果。该接口支持情况如下:支持对网页文件进行自动检测,从 OCR 文本识别、物体检测(实体、广告台标、二维码等)、图像识别几个维度,通过深度学习技术,识别网页中的违规内容。支持识别多种违规…

    腾讯云 2023年12月9日
  • 腾讯云对象存储上传对象

    简介 本文档提供关于对象的高级上传、简单上传、分块上传等操作相关的 API 概览以及 SDK 示例代码。说明 常见上传错误排查,请参考 常见问题。简单操作 API 操作名 操作描述 PUT Object 简单上传对象 上传一个对象至存储桶 Append Object 追加上传对象 将对象以分块追加的方式上传至存储桶 POST Object 表单上传对象 使用…

    腾讯云 2023年12月9日
  • 腾讯云对象存储媒体截图接口

    简介 本文档提供关于媒体截图接口的 API 概览和 SDK 示例代码。 API 操作名 操作描述 GetSnapshot 查询截图 用于查询媒体文件在某个时间的截图 查询截图 功能说明 用于获取媒体文件某个时间的截图,截图信息存到本地文件。 方法原型 CosResult GetSnapshot(const GetSnapshotReq& reques…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。