首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用腾讯云函数SCF快速解压对象存储COS中的ZIP文件

使用腾讯云函数SCF快速解压对象存储COS中的ZIP文件

作者头像
云存储
修改2019-11-26 18:48:59
3.9K0
修改2019-11-26 18:48:59
举报
文章被收录于专栏:腾讯云存储腾讯云存储

使用场景

在本实践中,我们用到了云函数 SCF 和对象存储 COS。假定用户上传到 COS 的 zip 文件需要进行解压缩,并以 zip 包名作为文件夹名,回传到 COS。用户可根据示例代码进行扩展,例如支持其他格式文件的解压缩操作。

由于当前云函数每次运行时分配的临时存储空间为512MB,因此建议单个 zip 包的大小不大于300MB,解压出来的单个文件不大于200MB。

操作步骤

一、创建存储桶

1. 登录对象存储控制台。

2. 创建一个【源存储桶】,用于存放上传的 zip 文件,命名 zip-upload,并选北京地域,访问权限选择私有读写。

 3. 创建一个【目标存储桶】,用于存放解压后的文件,命名为 unzip,并选择北京地域,访问权限选择私有读写。

二、创建函数SCF

 1. 登录云函数控制台,进入【函数服务】页面。

 2. 选择北京地域,单击【新建】,进入新建函数页面。

3. 在新建函数页面配置以下信息。

  • 函数名称:命名为 “unzip_to_cos”。
  • 创建方式:选择 “模板函数”。
  • 模板搜索:输入搜索关键词“解压”,选择“ZIP包解压”模板,单击【查看详情】可查看模板函数详情(模板目前支持 zip 格式,如需处理 rar 或 7z 等其他格式,需自行扩展代码)。

 4. 单击【下一步】,进入函数配置页面,保持默认配置即可,单击【完成】,完成函数的创建。

5. 单击【函数代码】,此时需要在函数代码编辑器中,按照注释修改以下参数,修改完成后单击【保存】即可。

  • appid:可在账号信息中获取。
  • secret_id、secret_key:可在帐号中心>访问管理>访问密钥管理中获取。
  • region:目标存储桶的所属地域,此处为 ap-beijing。
  • bucket_upload:此处应填 unzip-125xxxx(为目标存储桶名称)。
  • password:压缩包的解压密码,若不设解压密钥则留空。

6. 单击【函数配置】,修改函数的超时时间为100秒,最后单击【保存】。在实际运行过程中,如果有遇到函数执行超时,可以根据实际情况加大超时时间。

三、配置COS触发器

 1. 完成上述步骤创建云函数 SCF 之后。

 2. 选择【触发方式】>【添加触发方式】,为云函数添加 COS 触发器,配置如下信息后,单击【保存】。

  • 触发方式:选择 “COS 触发”。
  • COS Bucket:选择“zip-upload”。
  • 事件类型:选择“全部创建”,其它保持默认参数。

四、测试函数功能

 1. 下载 zip 格式的测试样例(https://dwz.cn/zlLgOiUU)。

 2. 进入对象存储控制台,选择创建好的存储桶:zip-upload,单击【上传文件】。

 3. 在弹出的“上传文件”窗口中,选择第1步下载的测试样例,单击【上传】。

 4. 进入目标存储桶:unzip,可查看到解压后的文件。

 5. 进入云函数控制台,查看执行结果。选择【函数服务】>【函数名】>【运行日志】,即可看到打印出的日志信息。

6. 显示调用成功,至此文件解压成功。

扫一扫关注 有惊喜
扫一扫关注 有惊喜
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云存储 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档