本教程假设以下情况:
您将不定时上传一些文本文件(例如日志等)至某个特定的 COS Bucket。
您要对这些文本文件进行字数统计。
实现概要
下面是该函数的实现流程:
创建函数与 COS Bucket。
用户将对象上传到 COS 中的源存储桶(对象创建事件)。
COS Bucket检测到对象创建事件。
COS 调用函数并将事件数据作为参数传递给函数,由此将 cos:ObjectCreated:* 事件发布给函数。
SCF 平台接收到调用请求,执行函数。
函数通过收到的事件数据获得了 Bucket 名称和文件名称,从该源 Bucket中获取该文件,根据代码中实现的 wordcount 进行字数统计,然后将其保存到目标 Bucket 上。
注意:
本示例会使用三个 COS Bucket。如果使用同一个存储桶作为源和目标,上传到源存储桶的每个文件都会触发另一个对象创建事件,该事件将再次调用函数,从而产生无限的循环。
请保证云函数和 COS Bucket 位于同一个地域下。
请注意,完成本教程后,您的账户中将具有以下资源:
两个 SCF 函数:Mapper 和 Reducer。
三个 COS Bucket:srcmr、middlestagebucket 和 destmr。
Mapper 函数将会绑定 srcmr 触发,Reducer 函数将会绑定 middlestagebucket 触发,destmr 将会用来接收最终的统计结果。
本页内容是否解决了您的问题?