Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >我们能用云函数做什么?

我们能用云函数做什么?

原创
作者头像
YingJoy_
修改于 2017-06-19 11:03:58
修改于 2017-06-19 11:03:58
17.4K0
举报
文章被收录于专栏:应兆康的专栏应兆康的专栏

前言

本文以Firebase为例,因为腾讯云的云函数正在内测,还没申请到。:)

现如今云计算时代渐渐出现了越来越多的新型模式,从

IaaS: Infrastructure-as-a-Service(基础设施即服务)

PaaS: Platform-as-a-Service(平台即服务)

SaaS: Software-as-a-Service(软件即服务)

到CaaS:Containers as a Service(容器云)

再到的微服务架构,都在试着将各种软、硬件资源或抽象的事物做为一种服务提供给开发者使用,让开发者不再担心基础设施、资源需求、中间件等等,在减轻心智负担的同时更好地专注于业务。

FaaS是Functions as a Service(函数即服务)的简称,它往往和无服务架构(Serverless Architecture)一同被提起。

正文

腾讯云的SCF

无服务器云函数(Serverless Cloud Function)是腾讯云提供的无服务器(serverless)执行环境,您无需购买和管理服务器,而只需使用平台支持的语言编写核心代码并设置代码运行的条件,代码即可在腾讯云基础设施上弹性、安全地运行。腾讯云完全管理底层计算资源,包括服务器 CPU、内存、网络和其他配置/资源维护、代码部署、弹性伸缩负载均衡等。代码按需运行,空闲时不收费。使用无服务器云函数将帮您免除所有运维性操作,使您更加专注于核心业务的开发,实现快速上线和迭代,把握业务发展的黄金时期。

Firebase

云函数使开发人员能够访问Firebase和Google Cloud的一些事件,以及可扩展的计算来运行代码以响应处理这些事件。 Firebase以独特的方式使用云函数来满足其独特需求,典型运用的领域:

  1. 当发生了一些新奇有趣的事情通知用户
  2. 执行实时的数据库清理和维护
  3. 在云上执行密集的任务,而不是在本地的应用程序上
  4. 与第三方的服务和API集成

下面就进行一一说明。

一、当发生了一些新奇有趣的事情通知用户

开发人员可以使用云函数来保持与用户之间的联系和获取最新的有关应用程序的相关信息。

比如,在一些社交网站或应用上(如微博)。 在这样的程序中,由实时数据库触发的写入功能以存储新的关注者可以创建Firebase的云消息通知,让用户知道他们的粉丝数又增加了。

下面是它的工作原理图:

  1. 该函数在对实时的数据库路径写入了相关信息,存储粉丝
  2. 该函数通过向FCM(Google的推送服务)发送消息
  3. FCM向用户的设备发送通知消息

YingJoy

其它通知的用例

  1. 向订阅/取消订阅的用户发送确认电子邮件
  2. 用户完成注册后发送欢迎邮件
  3. 当用户创建新帐户时发送短信确认

等等

二、实时进行数据库的清理和维护

使用云函数数据库处理事件,可以根据用户行为修改实时数据库,保持系统的更新和清洁。 例如,在基于实时数据库的聊天室应用程序中,您可以监视写入的事件,并从用户的消息中擦除一些带有敏感词或不恰当的文本。 下面是它的工作原理图:

  1. 函数的数据库事件处理程序监听特定路径上的写入事件,并检索所有聊天消息的事件。
  2. 该函数处理文本以检测和擦除敏感词或不恰当的语言。
  3. 该函数将更新的文本重新写回数据库。

YingJoy

其他实时数据库清理和维护用例

  1. 从实时数据库中清除已删除用户的账户信息
  2. 限制数据库中的子节点数
  3. 跟踪实时数据库列表中的元素数量
  4. 将文本转换为表情符号
  5. 管理数据库记录的计算元数据

三、在云上执行密集的任务,而不是在本地的应用程序上

开发人员可以利用云端功能将云资源密集型工作(要耗费繁重的CPU资源或网络资源)将运行的实际情况传送到在用户设备上。 例如,您可以编写一个函数来监听图像上传到Storage(谷歌的一个存储图像的程序)中,将图片的映像下载到运行该功能的实例,修改它并将其上传回页面中。 修改包括调整图片大小,裁剪或转换图像。利用ImageMagick命令行工具,与云功能一起使用,使其工作变得更加简单容易。

下面是它的工作原理图:

  1. 当图像上传到Storage的时候,该函数会被触发
  2. 该函数下载该图像的并创建它的缩略图
  3. 该函数将此缩略图的位置写入数据库,这样客户端程序就可以使用它
  4. 该函数将缩略图上传到新的存储位置

YingJoy

其他在云上执行密集的任务,而不是在本地的应用程序上用例

1.定期删除未使用的帐户

2.自动和上传的图像

3.向用户发送批量电子邮件

4.定期汇总数据

5.处理待处理的工作队列

四、与第三方的服务和API集成

云函数可以通过调用和公开服务或API来使你的应用程序可以更好地与其他服务配合工作。 例如,用于开发团队的应用程序可以将GitHub提交到开发团队的聊天室。

下面是它的工作原理图:

  1. 当有人提交给GitHub,通过GitHub的webhook API触发HTTPS功能。
  2. 该函数将提供一个Team Slack API 来发送提交的通知。
  3. 然后把消息发送给团队的聊天室中 YingJoy 其他与第三方的服务和API集成用例
    1. 使用Google的Cloud Vision API分析和标记上传的图像。
    2. 使用Google翻译邮件
    3. 使用LinkedIn或Instagram身份验证服务
    4. 向实时数据库写入webhook的发送请求
    5. 实时数据库元素的全库搜索
    6. 创建自动回复电话和短信
    7. 使用Google助手创建聊天机器人

再回头看腾讯云提供的SCF

这里仅仅讨论它的应用场景

Ⅰ、实时文件处理

视频应用、社交应用等场景下,用户上传的图片、音视频的总量大频率高,对移动应用的实时性和并发能力都有较高的要求。例如:使用多个云函数对上传的视频短片进行转码,分别对应不同的清晰度(1080p、720p 等),以满足不同场景下用户的需求,适应移动网络带宽较小且不稳定的特性。

  1. 先由客户端上传视频至云对象存储COS
  2. 然后通过自动触发云函数对视频进行处理(不同清晰度的转码)
  3. 然后将转码后的视频重新上传至云对象存储COS
  4. 最后再发送给用户

其中视频文件始终在COS上

Ⅱ、数据ELT处理

一些数据处理系统中,常常需要周期性/计划性地处理庞大的数据量。例如:证券公司每12小时统计一次该时段的交易情况并整理出该时段交易量 top 5,每天处理一遍秒杀网站的交易流日志获取因售罄而导致的错误从而分析商品热度和趋势等。

此时,腾讯云无服务器云函数 SCF 近乎无限扩容的能力可以使您轻松地进行大容量数据的计算。在下图所示的例子中,SCF 可以对源数据并发执行多个 mapper 函数,在短时间内完成工作,相比传统的工作方式,更能避免资源的闲置浪费而节省资金。

类似于上面的在云上执行密集的任务,而不是在本地的应用程序上

  1. 将存储在云对象存储COS的文件通过Map云函数进行文件映射
  2. 将映射出来的许多小文件分别通过云函数处理
  3. 然后将处理后的文件存储云数据库中(使得Map更加持久化)
  4. 然后通过Reduce函数将文件整合
  5. 最后会重新把这个新得到的存储到COS中

Ⅲ、移动及Web应用后端

无服务器云函数和其他腾讯云云服务紧密结合,开发者能够构建可弹性扩展并在多个数据中心高可用运行的移动或 Web 应用程序 – 轻松创建丰富的无服务器后端,无需在可扩展性、备份冗余方面执行任何管理工作。

  1. 用户授权登陆(OAuth)利用云函数进行验证(上面的与第三方服务或API集成)
  2. 浏览商品,商品信息存储在云对象存储COS
  3. 云函数处理用户的下单(历史数据或刚刚下的单)来对用户进行产品推荐

其中: 1.使用 COS 托管静态网站,构建商品明细模块;

2.使用 无服务器云函数 构建登录模块,可以直接复用 OAuth 的授权登录逻辑;

3.使用 无服务器云函数 构建订单模块,在用户调用下单相关接口时触发增删订单等函数;

4.同时使用 无服务器云函数 支持个性化模块,根据用户的订单信息生成个性化数据并返回给客户端。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
使用云函数 SCF+COS 快速开发全栈应用
我一直想做一个网页应用,奈何没有系统学习过前端,直到后来我接触到腾讯云无服务器云函数 SCF,让前端可以快速获得后端的能力同时,一并解决了前端数据请求跨域的问题。 没错,云函数 SCF 就是那种一旦用了就无法回到原来那种神奇的东西,让人不禁感叹为什么没有早点遇到 SCF 然后我花了大概一天的时间编写调试上线发布云函数(应用后端),然后又用了一天的时间学了下前端,主要是确定要用到的技术栈(后面我会再讲到这个问题),然后第三天正式开始开发应用,将云函数引入前端调用,测试数据,调整布局,打包网页发布到 codi
腾讯云serverless团队
2020/06/09
1.1K1
云函数扫盲
云函数作为无服务模式的一种实现(FaaS)已经有很多公司在提供了,亚马逊AWS、微软Azure、Google Cloud、IBM Cloud、阿里云、腾讯云、华为云、LeanCloud......
薛定喵君
2021/03/04
1.9K0
天狮集团云函数实践:自定义业务逻辑实现跨境电商全球直播
业务覆盖全球190多个国家和地区,服务全球用户超过4000万,业务领域横跨生物技术、健康管理、酒店旅游、教育培训、金融投资......运营这样一家跨国集团的全球化业务,需要在全球部署多少 IT 管理中心? 天狮集团作为这样一家跨国公司,给出的答案是:3个。 01. 一个 “小目标”:加速实现全球直播 天狮的全球化业务,主要由位于天津、北京和杭州的 3 个精简的 IT 团队负责,积极通过技术创新提升业务开发效率,源源不断地为天狮在全球输出业务动力。 2021 年,天狮将快速实现海内外直播服务提高为战略目标:
腾讯云原生
2021/10/12
2K0
使用无服务器云函数同步COS对象存储的元信息到ES中
本文利用腾讯云提供的Serverless执行环境-无服务器云函数SCF解决了这一问题。
bellen
2019/01/17
10.7K4
使用无服务器云函数同步COS对象存储的元信息到ES中
使用腾讯云无服务器云函数(SCF)分析天气数据
无服务器云函数(SCF)是腾讯云提供的Serverless执行环境,也是国内首款FaaS(Function as a Service,函数即服务) 产品。其核心理念是让用户将重心放在业务的逻辑实现上,而不用关心底层的运维包括服务器、存储、网络、自动扩缩容、负载均衡、代码部署等问题。
李想
2018/01/09
5.3K0
使用腾讯云无服务器云函数(SCF)分析天气数据
使用云函数实现定时签到
https://cloud.tencent.com/act/pro/618season?from=20877 或者 个人开发者云产品特惠活动-腾讯云
查拉图斯特拉说
2023/10/25
4630
使用云函数实现定时签到
卢萌凯:玩转SCF与COS的结合应用
大家好。我是腾讯云中间件及无服务器云函数架构师。我今天介绍分四部分:第一,对象存储COS简介。第二,比较实用的一部分,SCF与COS结合使用的应用场景。第三,比较有意思,人脸识别Demo。调用AI的接口,用几行代码就把人脸识别的Demo就实现了。最后一部分是最佳实践。其实主要是来看一下在COS使用过程当中有哪些需要注意的地方。
腾讯云开发者社区技术沙龙
2018/08/29
2.1K0
剑指 Firebase ,云开发—— 腾讯云的小 B 战略能行么?
小程序推出云开发已经有一段时间了,我自己也已经深度的体验了小程序云开发,自此,写下一篇文章来谈一谈我眼中的云开发。
白宦成
2018/11/09
8.9K0
剑指 Firebase ,云开发—— 腾讯云的小 B 战略能行么?
腾讯云 CFS 文件存储给云函数 SCF 带来的业务新场景
关注腾讯云大学,了解行业最新技术动态 戳【阅读原文】观看完整课程回顾 讲 师 介 绍  腾讯云高级产品经理,曾经历过企业级存储、企业级容器平台等产品的架构与开发,对容器、微服务、无服务器、DevOps 都有浓厚兴趣。 腾讯云高级产品经理,先后负责过对象存储、存储网关等多款存储产品,在存储领域有着丰富的经验。 云函数 SCF 存储的局限 前 Serverless 架构已经在很多场景中落地,无论是使用 API 网关+ SCF 云函数实现 API 服务和Web 服务,还是通过对象存储 COS 触发函
腾讯产业互联网学堂1
2023/05/29
8860
腾讯云 CFS 文件存储给云函数 SCF 带来的业务新场景
腾讯云发布无服务器云函数,较云主机成本低约70%
云资讯小编
2017/04/26
6.8K0
腾讯云发布无服务器云函数,较云主机成本低约70%
解锁腾讯云函数计算的无限潜能
在云计算领域不断革新的当下,腾讯云函数计算作为一项前沿技术,正为开发者和企业开启全新的高效开发与运营模式。
用户11419056
2024/12/23
1880
为什么我推荐个人开发者用SCF云函数?
我之前开发了免费、无广告的聚会小游戏给大家!不需要带桌游实体卡牌,也能在一起玩桌游!也支持线上玩!图片如下。
HullQin
2023/06/27
1.9K0
为什么我推荐个人开发者用SCF云函数?
最佳实践 | 腾讯云TRTC&云函数助力天狮集团快速上线全流程全球直播服务
业务覆盖全球190多个国家和地区,服务全球用户超过4000万,业务领域横跨生物技术、健康管理、酒店旅游、教育培训、金融投资......运营这样一家跨国集团的全球化业务,需要在全球部署多少 IT 管理中心? 天狮集团作为这样一家跨国公司,给出的答案是:3个。 01. 一个 “小目标”:加速实现全球直播 天狮的全球化业务,主要由位于天津、北京和杭州的 3 个精简的 IT 团队负责,积极通过技术创新提升业务开发效率,源源不断地为天狮在全球输出业务动力。 2021 年,天狮将快速实现海内外直播服务提高为战略
腾讯云音视频
2021/10/18
2.7K0
Supabase 让你用一个周末即可开发一个百万并发应用
Supabase是一个开源的后端即服务(BaaS)平台,旨在使用企业级开源工具复刻Firebase的功能。它能够快速构建包含身份验证、实时功能和文件存储等功能的应用程序,而无需编写任何服务器端逻辑。
埃兰德欧神
2024/07/15
4.7K0
Supabase 让你用一个周末即可开发一个百万并发应用
公有云-实验三 使用无服务器函数发邮件
在本实验中,我们将会使用腾讯云的消息队列CKafka、无服务器云函数SCF和对象存储COS,实现一个异常日志检测及记录系统。当业务系统中的应用功能程序生成日志后,会把日志信息通过消息实时传输到CKafka服务端。通过配置异常日志检测SCF的触发规则,一旦日志消息投递成功即可触发异常日志监测SCF的逻辑。异常日志监测SCF会监测接收到的日志消息是否含有异常关键字,然后把异常信息归档后投递到COS并发送邮件到指定的邮箱,从而实现无服务器函数发送邮件的目的。
误入歧途
2024/05/08
1970
公有云-实验三 使用无服务器函数发邮件
通过云函数SCF把视频处理VC迁移到云转码
本文将引导你逐步把视频处理的功能迁移到云转码,从腾讯云官网得知,视频处理VC的功能已迁移至云转码,不过老用户依然可以正常使用视频处理VC,但云转码不支持文件上传到cos后自动转码,需要调用一次云API发起转码;
美女视频
2019/07/24
1.7K0
通过云函数SCF把视频处理VC迁移到云转码
由浅入深 SCF 无服务器云函数实践
近年来,互联网服务从一开始的物理服务器托管,虚拟机,容器,发展到现在的云函数,逐步无服务器化。
腾讯云技术
2018/01/15
5.8K1
由浅入深 SCF 无服务器云函数实践
Serverless无服务器架构详解
Serverless: 无服务器架构,即在无需管理服务器等底层资源的情况下完成应用的开发和运行,是云原生架构的核心组成部分。
zhayujie
2020/08/03
4.6K0
Serverless无服务器架构详解
GitHub Actions+腾讯云COS+SCF云函数刷新CDN自动化部署静态网站
Stille:互联网重度爱好者,喜欢追求一切基于互联网的前沿科技、技术、产品,目前从事互联网软硬件相关工作。
云存储
2020/05/26
2.4K1
回顾|腾讯云 CFS 文件存储给 Serverless 云函数带来的业务新场景
云函数 SCF 存储空间使用背景 目前 Serverless 架构已经在很多场景中落地,无论是使用 API 网关+ 云函数 SCF 实现 API 服务和 Web 服务,还是通过对象存储 COS 触发函数运行,进行文件上传事件的传递和文件的处理,或者通过消息队列中的消息触发函数,进行消息的过滤转储;Serverless 依靠其快速开发上线,无需复杂运维的特性,正逐步进入到更多的业务场景中。 在实际的使用过程中,云函数作为计算形态的产品,提供了计算高度的弹性扩缩容。在云函数运行时,运行环境中的文件系统为只读,
腾讯云serverless团队
2020/09/01
1.9K0
推荐阅读
相关推荐
使用云函数 SCF+COS 快速开发全栈应用
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档