首页 >综合 > > 正文

【教程】初识云函数,实现无需服务器的项目上云!

2023-08-12 21:46:50 来源:哔哩哔哩

原文:/article/details/132241997

你是否也在忧愁,想把自己的项目放在云上跑,但又不想花大价钱购买云服务器?


【资料图】

云函数介绍

云函数(Serverless Cloud Function,SCF)的简单理解就是:可以部署在云上的项目,但不需要特地购买服务器,并且可以通过“定时/url访问”等特定方式触发运行。这特别适合于既需要云环境,但又不需要为此大成本购买服务器的用户。

比如,我只是希望能定时运行一个检查专利状态、自动签到的脚本,也可能是想要运行一个flask API网管,甚至你也可以用它来做自制软件的网络验证。

使用示例

这里,我们就简单介绍一个基于腾讯云函数的小应用:定时监控专利状态。部署流程都一样,熟悉后你就尝试可以从小应用扩展到大应用。

领取云函数资源

目前,腾讯向新用户免费赠送了3个月的体验版本,没有云函数资源得同学可以赶紧薅起来!领取入口:免费云函数

脚本编写

脚本的编写与在本地开发的模式一模一样,没有任何区别。

1、先点击“新建”云函数:

2、这里官方也提供了很多例程给你直接尝试:

3、不过我们是自己创建的话,就选右边的“从头开始”,并填写好信息:

这里的“事件函数”和“web函数”就是你的触发执行方式,由于是定时执行,所以这里选择“事件函数”。如果你想通过访问指定URL来触发执行(比如上传图片),那就选“web函数”。

高级配置”这里是根据你代码的需求来填,一般来说保持默认就行:

触发器配置”这里是让我们设置定时信息:

注意,如果你前面选的是“web函数”,那这里的内容就不一样了,它就长这样,也比较直观好理解:

4、等待部署完成后,就可以开始编写具体代码了。IDE应该是vscode改的,是不是就跟你本地一模一样:

如果写完代码,可以点“测试”跑一下,输出内容会显示在右下角:

5、我们以这个专利状态为例:SooPAT 专利搜索,它长这个样子:

我们使用requests库来请求这个url,再解析他的返回内容即可。注意,这里的requests是第三方库,这可如何安装?

我们直接在IDE下方的“终端”执行pip安装即可,非常的方便:

那么,最后的代码可以是这样的:

# -*- coding: utf8 -*-

import requests

from lxml import etree

def main_handler(event, context):

url = '/Home/SipoLegal/202211296680'

html = (url)

root  = ()

date = ('//*[@id="PatentContentTable"]/tbody/tr[3]/td[2]/text()')[0].strip()

state = ('//*[@id="PatentContentTable"]/tbody/tr[5]/td[2]/text()')

state = ', '.join(state).strip()

content = '公告日: ' + date + '; 状态: ' + state

url = '/QQ/send/?target=1061700625&msg='+content

(url)

这段代码实现了检查专利状态,并将结果发送到指定的url。

6、确认代码没有问题后,点击下方的“部署”,就可以让代码开始自动执行了:

7、支持各种信息的监控,方便合理的分配资源:

Serverless应用

如果说前面介绍的云函数是函数级别的上云,那Serverless应用就是框架级别的上云,它可以帮你创建指定框架下的环境,而不需要手动一点点搭建。可以看到,新建界面它只提供了各种框架的选择:

这种类型的,适合于比如你想做一个API网关,或者一个具体地、完整地应用。我们以创建一个Flask网关来给大家做一个演示。

1、简单填写一下信息:

在“高级配置”这里,我们可以勾选一下“固定出口IP”这个选项,因为它是免费的,不用白不用!

2、它会自动拉取代码并初始化环境,根据项目大小可能需要等待个5分钟,默默等待它部署完成:

3、创建完成后,点击这个“URL”就可以访问到这个应用了,不过我们还没有编写代码。我们回到“函数服务”这一栏,可以看到我们创建的flask应用,点进去:

跟前面步骤一样,我们根据自己的需求编写代码,编写完成后点击“部署”。

总结

云函数真是的非常的方便,它帮助我们实现了项目的上云,又不需要花大价钱去买云服务器。而且还有一点,云函数的通信安全是由腾讯来保障,因此免去了在服务器上还需要考虑如何防止被入侵的烦恼。对于需求量不大的用户简直是方便的不要不要的。

标签:

x 广告
x 广告

Copyright ©   2015-2022 南非劳务网版权所有  备案号:沪ICP备2022005074号-13   联系邮箱:58 55 97 3@qq.com