【学习分享】开发者最佳实践挑战营第七期第二章节学习体会

举报
CharlesE 发表于 2020/09/10 00:45:56 2020/09/10
【摘要】 分享开发者最佳实践挑战营第2章的学习体会与心得。 函数工作流真方便。

FunctionGraph是一项基于事件驱动的函数托管计算服务。使用FunctionGraph函数,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用。(源自官方手册)


第二章任务:

创建函数,创建OBS,利用函数工作流给图片加水印。


实验准备:

2个OBS桶,函数工作流,二者需处于同一区域。


实验步骤:

1、在OBS服务中,创建两个桶。

2、在统一身份认证服务( IAM)创建委托,为之后的服务赋予权限。

注意,新版的IAM工作台和教程里面有一定区别,搜索Tenant Administrator并选中确认即可。


3、构建函数程序

按步骤创建函数时注意,在“创建函数”——“步骤3”中,依赖库选择pillow-6.2.2。

在编辑器内找到obs_server这一行,如下图所示,需要填入已经建立好的OBS的Endpoint,我选择的是北京4,如果不进行修改,则会在后续实践中出现报错、无图片输出的情况。

未修改Endpoint时的报错如下图所示:

 

4、创建OBS触发器


5、处理图片

向Input桶上传图片,随后Output桶中会出现处理完成的水印图片,同时,函数工作流里的“函数指标”能看到请求相关参数。



实验总结:
利用函数工作流,我只需编写业务函数代码并设置运行的条件就可以达到预期效果,按函数实际执行资源计费,不执行不产生费用,极大的节省成本与时间。

上传图片就能自动触发函数工作,相对于一张一张手动P图加水印,让大批量图片加水印变得更加轻松

实践过程中也遇到了一些小问题,如图片大于1M,也会无法正确输出图片,这个问题暂时没有解决掉。


2020-10-17补充说明

在使用的时候有,建议把代码和水印图片打包成ZIP文件,通过上传ZIP来上传代码和图片,如直接在IDE中更换水印文件(将png文件直接拖入IDE),容易出现报错。

在使用中出现如下报错时,可以考虑通过修改图片的属性,在安全选项卡里面Users的权限设置为完全控制来解决。

image.png

1602930169799093033.png

png文件允许设置透明色来制造镂空的效果,如果上传的水印文件带镂空的,也容易报错。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。