九河云:在AWS上构建无服务器图像处理程序

网站通常需要呈现大量图像内容。当原始图像文件(图片)尺寸较大时,需要进行裁剪或缩放等额外处理,甚至根据设备端的分辨率进行适配。提前处理图像文件的工作量往往比较大,因此九河云结合AWS云平台提供一种按需使用的图像处理方式,在保证用户体验的同时降低图像文件分发的成本。

方案特点

(1) 该方案通过Amazon CloudFront缓存针对相同图像文件的访问请求,提高了用户体验。

(2) 按需对图像进行处理,即当图片被使用到的时候才会被处理。

(3) 提供丰富的图像处理方式,包括裁剪、居中、调整大小、模糊化等。

成本因素

用户只需要根据云上资源的实际用量付费,使用到的服务包括 Amazon CloudFront、Amazon API Gateway、Amazon Lambda、Amazon S3 等。按每月请求 100 万次新图片 (缓存失效情况) 估算 (不包含免费额度,参考平均图片处理时间为 1 秒,图像大小为 1 MB)。


第 1步

部署了 Amazon CloudFront 分配,该分配提供一个缓存层,以降低图像处理的成本和后续图像传输的延迟。CloudFront 域名可提供对图像处理程序 API 的缓存访问
 

第 2 步
Amazon API Gateway 提供端点资源并启动 AWS Lambda 函数。

第 3 步
Lambda 函数从您现有的 Amazon Simple Storage Service(Amazon S3)存储桶中检索图像,并使用 Sharp 将修改版的图像返回到 API Gateway 中。

第 4 步
S3 存储桶用于日志存储,与客户创建的用于存储图像的 S3 存储桶分开。如果选择,该解决方案会部署一个 S3 存储桶用于存储可选演示 UI。

第 5 步
如果您激活了图像 URL 签名功能,Lambda 函数将从您现有的 AWS Secrets Manager 密钥中检索密钥值以验证签名。

第 6 步
如果您使用智能裁剪或内容审核功能,Lambda 函数将调用 Amazon Rekognition 来分析图像并返回结果。

方案优势

1, 动态内容分发:根据客户的设备在运行时交付动态图片。

2, 内容审核使用:Amazon Rekognition 检测不当图像并进行模糊处理。

3, 智能裁剪:使用 Amazon Rekognition 的面部识别功能裁剪图像。

4,交互式Web界面:通过简单的 Web 界面,使用您账户中已经存在的图像文件与您的图像处理程序 API 端点直接交互。

5, 低成本存储:通过自动化版本控制节省存储成本,杜绝图像存在多个版本的可能。

最近更新

  1. TCP协议是安全的吗?

    2024-04-20 17:36:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-20 17:36:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-20 17:36:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-20 17:36:04       20 阅读

热门阅读

  1. 安卓手机APP开发__媒体开发部分__媒体源

    2024-04-20 17:36:04       16 阅读
  2. 蓝桥杯备考随手记: practise08

    2024-04-20 17:36:04       12 阅读
  3. 基于Python的招聘岗位数据分析系统的设计与实现

    2024-04-20 17:36:04       13 阅读
  4. QC、QA、SQC、SQA

    2024-04-20 17:36:04       16 阅读
  5. 签到接口流程总结

    2024-04-20 17:36:04       14 阅读
  6. Python3中的时间应用 (代码)

    2024-04-20 17:36:04       13 阅读
  7. 某互联网公司c++笔试题1

    2024-04-20 17:36:04       13 阅读
  8. 如何正确设计 TCP/IP 流式应用层网络协议

    2024-04-20 17:36:04       14 阅读
  9. coco128数据对象类别中英文对照json格式

    2024-04-20 17:36:04       12 阅读
  10. electron+Vue3构建桌面应用之IPC通讯

    2024-04-20 17:36:04       13 阅读