写点什么

5 分钟 Serverless 实践 | 构建无服务器的敏感词过滤后端系统

  • 2019-10-21
  • 本文字数:1445 字

    阅读完需:约 5 分钟

5分钟Serverless实践 | 构建无服务器的敏感词过滤后端系统

在上一篇“5 分钟 Serverless 实践”系列文章中,我们介绍了什么是 Serverless,以及如何构建一个无服务器的图片鉴黄 Web 应用。本文将延续这个话题,以敏感词过滤为例,介绍如何构建一个无服务器 API,即无服务器的后端系统。

函数工作流

函数工作流(FunctionGraph,FGS)是一项基于事件驱动的函数托管计算服务,托管函数具备以毫秒级弹性伸缩、免运维、高可靠的方式运行。通过函数工作流,开发者无需配置和管理服务器,只需关注业务逻辑,编写函数代码,以无服务器的方式构建应用,便能开发出一个弹性高可用的后端系统,并按实际运行消耗的资源计费。极大地提高了开发和运维效率,减小了运作成本。


相比于传统的架构,函数工作流构建的无服务器架构具有如下优点:

01 无需服务器

无需关注任何服务器,只需关注核心业务逻辑,提高开发和运维效率

02 按需付费

函数运行随业务量弹性伸缩,按需付费,执行才计费,对于负载波峰波谷非常明显的场景可以减少大量成本

03 配置简便

通过简单的配置即可连通函数工作流和其它各云服务,甚至云服务和云服务

构建无服务器的敏感词过滤后端系统

为了进一步让大家感受函数工作流的优势,我们将介绍如何通过函数工作流快速构建一个无服务器的敏感词过滤系统,本文我们主要关注后端系统,前端的表现形式很多,大家可以自行构建。如下图,该系统会识别用户上传的文本内容是否包含敏感信息(如色情、政治等),并对这些词语进行过滤。



  • 试想,如果我们通过传统的模式开发此应用,需要如何开发?即使是基于现在的云平台,我们也仍需要购买云服务器,关注其规格、镜像、网络等各指标的选型和运维,然后在开发过程中可能还需要考虑与其他云服务的集成使用问题,使代码中耦合大量非业务代码,并且服务器等资源也并非是按需的,特别是对于访问量波峰波谷非常明显的场景,会造成大量多余的费用。


现在我们可以通过函数工作流服务来快速构建这个系统,并且完全无需关注服务器,且弹性伸缩运行、按需计费,如图:



创建函数,在函数中调用华为云内容检测服务提供的文本检测接口,实现文本的敏感词检测,并为该函数配置一个 APIG 触发器,这样便可以对外提供一个敏感词过滤的 API,从而构建出一个完整的敏感词过滤的无服务器后端系统。客户端调用 API,他会自动触发函数执行,而开发者编写的函数只需实现接收到文本之后如何处理文本的逻辑即可,最后将结果返回给客户端。至此,我们就构建了一个完整的无服务器敏感词过滤后端系统。


接下来,我们将介绍如何完整地将此无服务器后端系统构建出来。

01 准备工作

进入华为云内容检测服务,申请开通文本内容检测,成功申请后便可以调用内容检测服务提供的文本检测接口了。

02 创建函数

进入函数工作流服务页面,创建函数,实现文本检测的接口调用和敏感词过滤,代码如下:




函数创建完成之后,为其配置具有 IAM 访问权限的委托,因为本函数代码中获取用户的 ak、sk 需要拥有访问 IAM 的权限。

03 创建 APIG 触发器

为函数配置一个 APIG 触发器,这样便得到一个调用该函数的 HTTP(S) API,供外部调用。



创建成功后,API 的 URL 可以在函数详情页面的“触发器”栏看到:


04 测试

使用 postman 等工具向上一步中创建的 APIG 触发器的接口发送 post 请求,body 体为:{“msg”: “过滤检测的文本”},查看返回信息。


比如发送 {“msg”: “just fuck …”}, 返回体为 {“result”: “just …”}


至此,我们就完整地构建了一个无服务器的敏感词过滤后端系统。


本文转载自公众号中间件小哥(ID:huawei_kevin)。


原文链接:


https://mp.weixin.qq.com/s/xVy3XYxAjdxYgRpPduD8Sg


2019-10-21 15:331149

评论

发布
暂无评论
发现更多内容

Veeam Backup & Replication 12.3.2 Windows x64 - 备份和恢复

sysin

veeam

Krita 5.2.10 (Linux, macOS, Windows) - 开源免费绘画软件

sysin

Krita

破解异构日志清洗五大难题,全面提升运维数据可观测性

阿里巴巴云原生

阿里云 云原生 sls

信创 CDC 实战 | TiDB 实时入仓难点与解决方案解析(以 ClickHouse 为例)

tapdata

tidb实时同步 tidb数据同步 信创数据库同步 tidbcdc clickhouse入仓

提升研发效能:CCode代码管理平台用自动化CI校验规范代码合并流程

嘉为蓝鲸

DevOps 代码管理 CCode

CIO 落地 AI 的最佳伙伴,飞书开发套件助力企业提升 AI 生产力

ToB行业头条

飞书 大模型

gpt4all for mac(Mac本地部署deepseek)

晨光熹微

订单初版—取消订单链路中的技术问题说明文档(二)

量贩潮汐·WholesaleTide

Java 数据库 服务器

【CMDB治理】多角色驱动:精准规划CMDB数据消费场景指南

嘉为蓝鲸

AIOPS CMDB IT资产管理

加工进化论:SPL 一键加速日志转指标

阿里巴巴云原生

阿里云 云原生 SPL sls

教培行业首发!腾讯云 X 咕泡科技 AI 实训 CDE 平台正式落地

咕泡科技

人工智能 腾讯云 AI 咕泡科技 实训平台

Invicti v25.7.0 发布,新增功能简介

sysin

invicti

高德智能手表解决方案,助力荣耀手表5 Ultra开启智慧出行

高德开放平台

高德地图 智能穿戴 RTOS

四季沐歌携手天润融通,用Agent干掉80%重复工作

天润融通

天晟科技携手万表平台,共同推动RWA项目发展

科技汇

从语义检索到精准匹配:智能运维OpsPilotV3.5问答对能力解读

嘉为蓝鲸

智能运维 weops OpsPilot 问答对

VMware Aria Operations for Networks 6.14 - 网络和应用监控工具

sysin

vmware

Apache Cloudberry 向量化实践(三):Gandiva 优化实战

酷克数据HashData

Vue 3 赋能低代码:构建高性能、可定制化企业级应用的新范式

不在线第一只蜗牛

Vue 低代码

Post-Training on PAI (3): 自研高性能强化学习框架PAI-ChatLearn

阿里云大数据AI技术

人工智能 开源 模型 强化学习 大数据、

Steinberg HALion Mac(专业虚拟采样与声音合成)

晨光熹微

Veeam Data Platform 12.3.2 (Windows) - 数据保护和管理解决方案

sysin

veeam

技术领跑!Apache IoTDB 6 篇论文入选数据库国际顶会 SIGMOD、ICDE 2025

Apache IoTDB

在AI时代,如何从开源项目中发现真实需求?

qife

开源项目 AI技术

优化测试执行:嘉为蓝鲸CTest测试管理平台结构化用例提升效率与缺陷追踪能力

嘉为蓝鲸

DevOps 测试用例 CTest

OpenLLMetry 助力 LLM 应用实现可观测性

观测云

LLM

Veeam Recovery Orchestrator 7.2 (Windows) - 恢复编排

sysin

veeam

通过ETL工具,高效完成达梦数据库数据同步至数仓Oracle的具体实现

RestCloud

oracle 数据处理 数据同步 ETL 达梦数据库

GPU 降成本免运维,睿观 AI 助手选择函数计算

阿里巴巴云原生

阿里云 Serverless 云原生 函数计算

再获5亿元融资加持,云深处何时走向“C位”?

趣解商业

科技 人形机器人 云深处科技

3小时成为百万富翁 | 金融科技漏洞赏金实战(第一篇)

qife

漏洞赏金 GraphQL漏洞

5分钟Serverless实践 | 构建无服务器的敏感词过滤后端系统_文化 & 方法_李壮_InfoQ精选文章