课时5:函数的调试与部署

简介: 课时5:函数的调试与部署

玩转AIGC训练营:课时5:函数的调试与部署

课程地址:https://developer.aliyun.com/trainingcamp/1893257e5f7a442c988fd52c818309b3?spm=a2cwt.28237621.J_9603273760.8.31b2b726xTbsZG

课时5:函数的调试与部署-Serverless

 

内容介绍
一、引入举例

二、函数计算及相关的开发工具

三、函数部署

 

一、引入举例

相对于来说,调试的部分是比较困难的,因为调试的本身就是Serverless架构的一大弱点。

引入:写代码为什么要有调试的过程呢?不调试行不行?

上学的时候无论是考试还是做什么都少不了一个检查的过程,比如说写完作业,爸妈就会说写完了检查一下;考试的时候老师也会说,答完卷检查一下,一会儿就要交卷了;

在我们做完某件事情的时候,都有这样一个检查的过程,来保证我们尽可能的少犯错误或者不犯错误,程序也是如此;

*写完的代码是否有BUG

*代码在函数上是否可以运行的起来

*函数运行是否和自己的预期一致

*代码是否会进行一些奇奇怪怪的操作

*......

写了一堆代码,难免这些代码会做一些奇奇怪怪的事情。

比如说:少了一个字母,用错了一个标点符号,或者说程序的输出与预期的是不一致的;或者程序存在逻辑问题,程序在处理某些业务时,少考虑了一些因素等等很多问题....

所以这个时候我们就需要自己检查一下看看是不是OK的,如果不OK马上修改,如果OK就提交代码、上传代码、部署代码等。那么这个过程就可以认为是我们调试的过程,当然,调试也并不是这样简单容易的,有很多的方法和理论。

 

二、函数计算及相关的开发工具

1、云调试

打开浏览器,进入项目页面,点击invoke按钮进行调试就可以了

image.png

 

当左侧有一个项目的时候,只需要点击右边的invoke他就可以输出目标结果。

大家可以看到在线调试这个图我们已经完成了调试↓

image.png

输出了hello world,这种方法非常简单,对于临时使用是非常有效果的,但对于稍微麻烦一些的项目可能就不大适合在线上调试了,这个时候我们就需要本地开发和调试方法,毕竟我们大部分的代码都是在本地来进行开发和调试的,虽然说现在大家都在云端写代码、云端开发、云端抵BUG是未来的趋势;但是,至少目前来看还是本地开发更习惯、更靠谱一些。所以这个时候就需要插件命令行工具。

2、命令行工具

首先,在安装命令行工具之后如果想进行本地调试,还需要安装docker,安装之后就可以通过invoke的指令来进行本地的调试了。

image.png

 

当我们输入完指令

jiangyu@B-165MLVDL-0004 demo 03  % fun local invoke demo 03/demo 03

按回车之后,会顺利的输出相关的结果

image.png

当然,如果是第一次使用,可能也会涉及到通过拉取镜像的一个过程。

3、VSCode插件

如果要在编辑器中写代码,调试的话,要有VSCode插件,只需要点击VSCode运行功能,插件就可以自动拉起docker帮助我们进行调试。

image.png

举例调试一个项目<demo-03>

只需要点击这个按钮即可(下图鼠标位置)↓

image.png

可以看到顺利的输出了相关的结果↓

image.png

可以看到这张图片已经顺利的输出了预期结果↓。

image.png

4、无工具调试

没有docker是不行的,因为调试机制的本身就是要依赖docker的;但是,人类往往是具有创造力的,没有条件就要创造条件,也可无工具调试。

image.png

以拍三为例,只需要增加一段代码,来调试来调用我们的方法,至于event可以采用我们即将使用的触发器的情况,这样就可以实现我们简单的调试方法了。

调试方法对比

 

云调试

命令工具

VSCode插件

无工具调试

是否本地执行

否(云端)

是否需要安装工具

是否需要安装 Docker

是否可以模拟真实环境

绝大部分是

绝大部分是

部分是

是否简单快速

是否符合开发习惯

在一般小的情况下,不想开编辑器,不想用docker的情况下,想要比较靠谱的情况下可以使用云端调试。

如果想在本地调试,开发更加亲密一些,可以使用命令行工具或者VSCode插件。

如果不想安装各种工具,完全可以使用最后这种方法进行调试。

云端调试虽然说不太符合我们的开发习惯,但是这种开发方法真的可以百分之百模拟现场;第2种和第3种方法虽然可能通过docker镜像方法,已经尽可能的模仿了线上环境,但是对于一些线上资源交货的场景,尤其是通过VPC等和其他资源进行交货的场景,这种方法未必可以很好的解决类似的问题;针对最后一种方法,只可以说临时用一下还好,它的环境真的可能和线上环境天差地别,那么,很可能会对我们真正上线的时候造成一定的影响。

 

三、函数部署

部署部分很容易,方法也很简单,也不需要特殊的依赖,就算没有docker等这些依赖,也都是完全可以的。

第一种方法:在创建函数或者更新函数的时候上传代码包等;

第二种方法:如左图所示,通过命令行工具执行来进行部署;

第三种方法:通过VSCODE插件,点击上传按钮,即可进行部署;

在线部署:编写代码保存,上传代码。

客户端部署:通过VSCODE插件,通过命令行工具

image.png

 

格外强调

命令行工具的/H指令真的非常方便,无论在任何时候都可以使用/H指令来查看当前功能下的一些使用方法。

相关实践学习
函数计算部署PuLID for FLUX人像写真实现智能换颜效果
只需一张图片,生成程序员专属写真!本次实验在函数计算中内置PuLID for FLUX,您可以通过函数计算+Serverless应用中心一键部署Flux模型,快速体验超写实图像生成的魅力。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
存储 IDE 区块链
《Solidity 简易速速上手小册》第3章:Solidity 语法基础(2024 最新版)
《Solidity 简易速速上手小册》第3章:Solidity 语法基础(2024 最新版)
653 2
|
存储 算法 测试技术
|
安全 算法 中间件
OASA 厂商三未信安完成与 Anolis OS 及其衍生版适配,密码卡性能与稳定性获验证
验证了 Anolis OS 能够满足用户对于数据保护和隐私安全的高标准要求,可以为广大用户提供更可靠的数据保护。
|
数据采集 自然语言处理 搜索推荐
基于qwen2.5的长文本解析、数据预测与趋势分析、代码生成能力赋能esg报告分析
Qwen2.5是一款强大的生成式预训练语言模型,擅长自然语言理解和生成,支持长文本解析、数据预测、代码生成等复杂任务。Qwen-Long作为其变体,专为长上下文场景优化,适用于大型文档处理、知识图谱构建等。Qwen2.5在ESG报告解析、多Agent协作、数学模型生成等方面表现出色,提供灵活且高效的解决方案。
1508 49
|
Web App开发 前端开发 JavaScript
网页浏览和编辑DWG快速入门的方法(WEB CAD SDK)
MxDraw云图在线CAD解决方案,包括MxDraw、MxCAD开发包、图纸转换程序和后端服务。支持多种平台和CPU架构,推荐使用最新版Chrome或Edge浏览器。提供AutoCAD各版本dwg格式支持,具备三维和二维编辑功能。提供入门开发指南和功能丰富的示例。用户可下载开发包进行功能演示,包括在线预览和编辑CAD图纸。
2225 103
网页浏览和编辑DWG快速入门的方法(WEB CAD SDK)
|
人工智能 搜索推荐 算法
当AI代做PPT时,教师如何完成自我迭代?——从生成式人工智能(GAI)认证看教育者的未来突围
本文探讨了AI在教育领域的广泛应用及其对教师角色的挑战,强调知识观与教育观的转变。生成式人工智能(GAI)认证为教师提供了提升AI应用能力、促进教育创新的机会。文章建议教师通过转变观念、加强情感交流及参与创新实践完成自我迭代,并呼吁政府、学校和社会共同支持AI时代教育的发展,以培养适应未来的高素质人才。
|
自然语言处理 API Python
LLaMA
【9月更文挑战第26天】
689 63
|
人工智能 安全 API
什么是阿里云百炼?
什么是阿里云百炼?
4932 0
|
域名解析 网络协议 网络安全
WordPress搭建个人博客
这篇文章将手把手地指导你如何快速完成WordPress的搭建。你可以利用WordPress搭建个人博客,甚至企业官方网站。只要你跟着本文的步骤走,即使小白也能轻松搞定WordPress网站搭建。首选你需要购买一个vps,并将你的域名解析到vps;然后连接你的VPS,在vps上执行命令一键安装WordPress;再接下来就是初始化你的WordPress了,安装Argon模板、安装RankMath SEO插件、安装webp图片速度优化插件
1050 2
WordPress搭建个人博客

热门文章

最新文章

下一篇
开通oss服务