服务/业务 | 函数计算 |
---|---|
权限/策略 | AliyunFCFullAccess |
- 🔥 通过 Serverless 应用中心 ,
该应用。
- 通过 Serverless Devs Cli 进行部署:
- 安装 Serverless Devs Cli 开发者工具 ,并进行授权信息配置 ;
- 初始化项目:
s init ots-table-backup -d ots-table-backup
- 进入项目,并进行项目部署:
cd ots-table-backup && s deploy -y
使用表格存储后,比较常见的运维场景是主备表间进行同步。通过该项目,可以利用函数计算完成将表格存储的源表定时备份到目标表的功能,实现按量付费,免去购买及运维服务器的烦恼。
通过本应用,还可以完整地体验从 SpringBoot 单体应用平滑迁移函数计算的流程
参数名称 | 参数类型 | 是否必填 | 例子 | 参数含义 |
---|---|---|---|---|
serviceName | String | 选填 | ots-table-backup | 函数服务名称名 |
functionName | String | 选填 | ots-table-backup | 函数名称 |
roleArn | String | 必填 | acs:ram::<accountId>:role/aliyuncdnserverlessdevsrole | 函数执行角色 |
sourceEndpoint | String | 必填 | https://<instanceId>..ots-internal.aliyuncs.com | 源表所在实例endpoint |
targetEndpoint | String | 必填 | https://<instanceId>.<region>.ots-internal.aliyuncs.com | 目标表所在实例endpoint |
sourceTable | String | 必填 | source-table | 源表名名 |
targetTable | String | 必填 | target-table | 目标表名名 |
tunnelType | String | 选填 | BaseData | 通道类型 |
backupEndTime | String | 选填 | 2022-07-01 01:01:01 | 使用增量备份时,备份的截止时间,yyyy-MM-dd HH:mm:ss |
dropIfExist | Boolean | 选填 | False | 目标表存在时是否先删除目标表,保证目标表和源表的完全一致 |
cronExpression | String | 选填 | '@every 60m' | 定时触发时间,参考 函数计算 |
- 利用表格存储的通道服务,将其改造成Serverless形态,完成从源表到目标的复制功能
- 使用函数计算的 Custom Runtime 将单体SpringBoot项目进行函数化,完全贴合传统开发体验,实现零代码改造
- 使用函数计算的 生命周期回调,将表初始化的逻辑封装到 Initializer 中,将通道消费的逻辑封装到 Invoke 中,将连接池释放的逻辑封装到 PreStop 中
部署完成后,会创建两个函数:
- ots-table-mock:用于测试,当指定的源表不存在时,会使用mock数据自动构造一张
- ots-table-backup:用于表的备份
您如果有关于错误的反馈或者未来的期待,您可以在 Serverless Devs repo Issues 中进行反馈和交流。如果您想要加入我们的讨论组或者了解 FC 组件的最新动态,您可以通过以下渠道进行:
微信公众号:serverless |
微信小助手:xiaojiangwh |
钉钉交流群:33947367 |