我的 Serverless 实战 — 使用基于腾讯云云函数部署项目实践

Posted 雨果虾滑猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的 Serverless 实战 — 使用基于腾讯云云函数部署项目实践相关的知识,希望对你有一定的参考价值。

【本文正在参与“100%有奖|我的Serverless 实战”征稿活动】

页面活动链接 https://marketing.csdn.net/p/15940c87f66c68188cfe5228cf4a0c3f

前言

在我的上一篇文章中,我们从概念入手,认识了什么是Serverless,以及现有的支持Serverless的厂商。

我的 Serverless 实战 — 理解Serverless概念、和传统开发模式区别以及优缺点

从这篇开始,我将从实践出发,一步一步踩坑,详细介绍函数即服务(Faas)以及相关配套服务的部署,最终达到在生产环境运行的目的。

腾讯云serverless

php7 + API网关

在这里插入图片描述
这个demo让我们了解到云函数的配置情况和基本流程。

点击部署,我们可以看到的是新建云函数页面。

包含了

  • 基本配置
  • 函数代码
  • 高级配置
  • 触发器配置

基本配置

基本配置主要是选择地域,推荐查找官方文档,选择最便宜的地域。

在这里插入图片描述
根据查询文档,目前还没有根据地域区分定价,所以根据实际情况选择离业务较近的地域即可。

函数代码

在这里插入图片描述
函数代码整合了Cloud Studio 的在线编辑器,显然不是很好用,不管是编写还是调试。这个坑后续再说。

(更新 坑已经填了 https://coderfix.blog.csdn.net/article/details/116521657)

高级配置

这里的高级配置指的是绑定腾讯云的日志服务CLS,和一些运行相关的配置问题。

云函数服务支持两种触发方式

  • 同步
  • 异步

如果需要支持异步操作,就需要勾选配置项。

在这里插入图片描述

环境配置指定了运行内存,这个很重要,因为内存的多少和费用是紧密相关的。

资源使用费用 =(资源使用量 - 免费资源额度)× 资源使用单价
资源使用量 GBs
资源使用量 = 函数配置内存 × 运行时长
用户资源使用量,由函数配置内存,乘以函数运行时的计费时长得出。其中配置内存转换为 GB 单位,计费时长由毫秒(ms)转换为秒(s)单位,因此,资源使用量的计算单位为 GBs(GB-秒)。
例如,配置为256MB的函数,单次运行了1760ms,计费时长为1760ms,则单次运行的资源使用量为(256 / 1024)×(1760 / 1000) = 0.44GBs。

这时候体会出代码优秀有多重要了吧。。。。

在这里插入图片描述

触发器配置

在这里插入图片描述

触发器的概念源自于"事件触发(Event-Triggered)",触发器可以理解为将云函数调用到业务中的桥梁,我们可以通过下面方式调用触发器,运行云函数

  • 定时触发
  • 指定的 COS Bucket 发生对象创建或对象删除事件时
  • 指定的 CKafka Topic 接收到消息时
  • 指定的 CMQ Topic 接受到消息时
  • 指定的 CLS 触发器接收到消息时
  • 指定的 MPS 触发器接收到消息时
  • CLB 触发器接收到请求时

这里我们可以发现一个问题,业务和架构的数据流动,都需要依赖于触发器进行,而服务商的各种服务是紧密绑定的。而我们从这里也就能体会到Serverless的缺点之一,迁移成本提高。

创建云函数

点击创建之后,就会看到云函数正在创建

在这里插入图片描述
经过等待,云函数创建完成。

在这里插入图片描述

角色授权

在这里插入图片描述

调用云函数

使用测试调用云函数,可以测试云函数的返回,并且可以我们可以在日志中查看返回。

在这里插入图片描述

总结

本文主要讲了

  • 云函数的创建
  • 云函数的触发方式
  • 测试环境调用云函数

下次更新

  • Serverless应用的创建
  • Serverless中调用多个云函数

参考资料

  • https://cloud.tencent.com/document/product/583/31927#timer-.E8.A7.A6.E5.8F.91.E5.99.A8.E7.9A.84.E4.BA.8B.E4.BB.B6.E6.B6.88.E6.81.AF.E7.BB.93.E6.9E.84
  • https://coderfix.blog.csdn.net/article/details/116521657

以上是关于我的 Serverless 实战 — 使用基于腾讯云云函数部署项目实践的主要内容,如果未能解决你的问题,请参考以下文章

我的Serverless实战—基于Serverless搭建WordPress个人博客图文教程

我的Serverless实战—基于Serverless搭建一个简单的WordPress个人博客图文详解-JJZ

我的 Serverless 实战 — 云函数与触发器的创建与使用 ( 开通腾讯云 “ 云开发 “ 服务 | 创建云函数 | 创建触发器 | 测试触发器 )

我的 Serverless 实战 — 腾讯云Serverless 应用开发部署并调用云函数看这一篇就够了

我的 Serverless 实战 — 腾讯云Serverless 应用开发部署并调用云函数看这一篇就够了

我的 Serverless 实战 — 云函数本地开发环境搭建