【学习笔记】FunctionGraph实现图片压缩和水印添加

举报
真爱无敌 发表于 2020/02/04 13:45:39 2020/02/04
【摘要】 一、图片压缩和水印添加概述1.图片为什么要压缩与水印? 1)信息化时代,大量的多媒体信息保存在互联网上 2)移动互联网+浪潮推动下,每个个体都成为大量的数据制造者 3)如何更好的传输、存储和辨识这些数据?2.图片压缩的使用场景 1)个人、家庭和企业图片归档时压缩,减少磁盘占用 2)在线上传图片大小受限、邮件附件大小受限等限制图片大小场景 3)互联网产品中大量涉及图片,使用压缩提升...

image.png

一、图片压缩和水印添加概述

1.图片为什么要压缩与水印?

  1)信息化时代,大量的多媒体信息保存在互联网上

  2)移动互联网+浪潮推动下,每个个体都成为大量的数据制造者

  3)如何更好的传输、存储和辨识这些数据?

2.图片压缩的使用场景

  1)个人、家庭和企业图片归档时压缩,减少磁盘占用

  2)在线上传图片大小受限、邮件附件大小受限等限制图片大小场景

  3)互联网产品中大量涉及图片,使用压缩提升访问速度、降低图片传输和存储成本

3.水印的使用场景

  1)水印≈盖章,标识版权,防止剽窃

  2)水印≈logo,提高辨识度,引起关注

  3)水印≈附加信息,可自定义添加制作地点、时间、用途等相关信息

4.如何实现图片压缩?

  1)使用图片压缩软件:简单易用,复杂功能需收费

  2)网页在线图片压缩:简单易用,功能单一、不适合批量压缩

  3)自设图片压缩代码:需要编程基础,可自定义功能

  4)使用云服务批量压缩:简单易用,适用于批量处理和归档,可结合自设代码

  image.pngspacer.gif

5.如何实现水印添加?

  1)专业图像处理软件:需一定抠图技能,可实现复杂的水印添加功能

  2)网页在线添加水印:简单易用,功能单一、不适合批量添加

  3)自设水印添加代码:需要编程基础,可自定义功能

  4)使用云服务批量添加水印:简单易用,适用于批量处理和归档,可结合自设代码

  image.png

  spacer.gif

二、函数工作流简介

1.函数工作流概述

   函数工作流(FunctionGraph)是华为云提供的一款无服务器(Serverless)计算服务,包含函数和工作流两个功能模块,分别实现函数计算和函数编排的功能。

spacer.gif   image.png

2.函数工作流与图片压缩和水印添加

  1)函数工作流≈图像处理所使用的的“软件/程序”?

  2)函数工作流=图像处理使用的“软件”+“计算资源”

                        =(图像处理函数代码+代码运行环境)+(CPU+内存)

  image.pngspacer.gif

3.FunctionGraph函数运行时

  1)函数支持Node.js、java、python、Go、C#运行时

  2)支持在线编辑代码、OBS文件引入、上传ZIP包、上传JAR包等

  image.png

spacer.gif

4.FunctionGraph工作流

  image.png

  spacer.gif

5.函数工作流实现图片处理的优势

   1)无服务器管理

   2)高弹性

   3)可视化管理

   4)按需计费

6.函数工作流的使用限制

  image.png

  spacer.gif

三、函数工作流相关华为云服务简介

1.对象存储服务概述

   1)OBS是一个机遇对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力。

   2)OBS由桶(Bucket)和对象(Object)构成,并提供模拟文件夹的方式方便文件管理。

   3)OBS访问方式包括:OBS Browser、管理控制台、API&SDK、obscmd

2.对象存储服务和图片压缩和水印添加

   1)对象存储服务=图片存储空间+触发图片处理函数运行的事件源

                             =(桶Bucket)+(函数触发器)

   image.pngspacer.gif

3.OBS在图片压缩和水印添加中的工作流程

   1)源桶:有关于上传源图片,并充当OBS触发器

   2)目标桶:作为函数环境变量,函数输出图片的存放位置

   image.png

spacer.gif

4.对象存储服务实现图片处理的优势

   1)海量存储空间

   2)高安全

   3)低成本

   4)高可靠

5.统一身份认证服务概述(IAM)

   1)IAM提供身份认证和权限管理功能,可以管理用户账号,并可以控制这些用户对您名下资源的操作权限

   2)IAM可以委托新人的华为云账号,使其根据权限安全便捷地访问您的公有云资源。

   3)IAM委托=授权FunctionGraph中的图片处理函数对OBS桶内图片进行处理

   4)华为云上不同云服务默认无法相互调用,需创建IAM云服务委托后才能互相调用

   image.png

   spacer.gif

四、利用函数工作流实现图片压缩和水印添加实践

1.整体流程介绍

spacer.gif   image.png

2.常见问题:

   1)能否使用一个OBS桶?

       不能。如果使用一个桶,会无限执行函数

   2)OBS桶名是否可以自定义?

       可以,但是必须保证桶名唯一性

   3)OBS桶是否可以在不同AZ?

       默认不可以,但是部分区域内已经可以实现跨AZ访问


3.华为云FunctionGraph使用流程

    image.png

4.华为云FunctionGraph的产品优势

1)无服务器管理

自动运行用户代码,用户无需配置或管理服务器,专注于业务创新。

2)高弹性

根据请求的并发数量自动调度资源运行函数,实现透明、准确和实时的伸缩,应付业务峰值的访问。

用户无需关心峰值和空闲时段的资源需要申请多少资源,系统根据请求的数量自动扩容/缩容。自动负载均衡将请求分发到函数运行实例。

3)事件触发

通过事件触发机制,集成多种云服务(SMN,OBS,DIS,DMS…),满足不同场景需求,获得高效的开发体验。

与云日志服务、云监控服务对接,无需任何配置,即可查询函数日志和监控告警信息,快速排查故障。

4)高可用

函数运行实例出现异常,系统会启动新的实例处理后续的请求,故障函数实例占用资源将会回收使用。

5)按需计费

根据代码的调用次数、运行时长和节点转换次数计费,代码未运行时不产生费用。时长计量粒度为100毫秒。


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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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