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

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

使用场景

在本实践中,我们用到了云函数 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. 显示调用成功,至此文件解压成功。

扫一扫关注 有惊喜

本文分享自微信公众号 - 腾讯云存储(gh_30cb70e39822),作者:COS团队

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 大厂程序员为了更好的满足历史数据的保存和检索往往选择这种神操作!

    ElasticSearch是一款开源的非常火爆的文档索引引擎, 大小公司都比较青睐的一款做日志检索、分析、查询的工具。

    云存储
  • 腾讯云对象存储COS安全方案介绍

    ​相信所有企业和个人开发者在选用云存储产品时都把数据安全作为重要考量标准。 本文介绍了用户如何使用腾讯云对象存储COS的事前防护、事中监控、事后追溯三个手段来保...

    云存储
  • 将 Discuz! 论坛远程附件存储到腾讯云对象存储COS上

    Discuz! 论坛可以通过配置远程附件功能将论坛的附件保存在腾讯云 COS 上,将论坛附件保存在 COS 上有以下好处:

    云存储
  • 金融科技&大数据产品推荐:BIGDAF——专业的Hadoop大数据安全防火墙

    BIGDAF是国内第一个网关级Hadoop大数据安全防火墙,也是目前唯一通过公安部认证的Hadoop安全防护产品,具备“软件-硬件-云”多样化产品形态 官网 |...

    数据猿
  • 【Windows编程】创建多文档界面

    前面我们所举的例子中都是单文档界面框架,也就是说这个窗口里面的客户区就是一个文档界面,可以编写程序在里面输入或者绘制文本和图形输出,但是不能有出现多个文档的情况...

    程序员互动联盟
  • 小程序一周报

    2 月 14 日,微信公众平台开发者社区置顶了《关于新增「社交红包」类目的通知》,将严管含有微信用户充值红包功能的小程序。

    极乐君
  • redis持久化策略梳理及主从环境下的策略调整记录

    redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。可以不定期的通过异步方式保存到磁盘上(即“半持久化模式”...

    洗尽了浮华
  • 通过pycharm的Database设置进行数据库的可视化

    意气相许的许
  • 再小的个体也有自己的品牌,微信小程序如何让线下实体店打破电商的冲击?

    近几年,随着电商对传统零售行业的不断冲击,零售实体店的发展现状透着股股寒意。万达百货、百丽、七匹狼、GAP、人人乐、美邦等关店的消息频繁爆出,亏损、利润大跌、客...

    用户1745481
  • 再小的个体也有自己的品牌,微信小程序如何让线下实体店打破电商的冲击?

    近几年,随着电商对传统零售行业的不断冲击,零售实体店的发展现状透着股股寒意。万达百货、百丽、七匹狼、GAP、人人乐、美邦等关店的消息频繁爆出,亏损、利润大跌、客...

    用户1745481

扫码关注云+社区

领取腾讯云代金券