我的 Serverless 实战 — 保姆级带你部署云函数

网友投稿 838 2022-05-30

【本文正在参与“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

资源使用量 = 函数配置内存 × 运行时长

我的 Serverless 实战 — 保姆级带你部署云函数

用户资源使用量,由函数配置内存,乘以函数运行时的计费时长得出。其中配置内存转换为 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

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:代码重构之神秘命名
下一篇:缓解拖延症的好办法
相关文章