背景
如前文所述,想要搭建一套云处理体系,有很多配置需要CRUD,因此,需要一套元数据配置服务,存储 or 读取相关配置,以便做下一步业务逻辑。
功能梳理
功能点 |
说明 |
备注 |
url解析成uri |
将文件url解析成cloud、bucket、key,方便在多云环境下,能够正常上传、下载文件 |
|
多云下的bucket关联域名 |
bucket与host关联,提供url解析的元数据信息 |
|
域名打标签 |
任何一个域名,会关联多个标签,方便不同业务场景分发不同的域名 |
|
url重签 |
私有桶的url容易过期,需要一种方式重新对url重签 |
|
ak/sk |
bucket与ak/sk的关系,也是一对多,也需配置:标签的功能,标记在什么样的情况下,使用哪一组ak/sk |
|
备注:
1、一个host只能找到唯一的bucket与之对应。
2、ak/sk与标签的关系:一对一
3、host与标签的关系:一对多
功能设计
注意:并不一定需要单独的http服务,业务量级小的时候,也可是网关的一个模块。
yml设计
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| aliyun: mifish-video: hosts: - host: mifish.video.cdn.outer.com tags: - jdcdn - wangsucdn - host: mifish.video.inner.com tags: - inner auth: - ak: '' sk: '' tag: '' - ak: '' sk: '' tag: '' hwcloud: mifish-img: hosts: - host: mifish.img.cdn.outer.com tags: - jdcdn - hwcdn - host: mifish.img.inner.com tags: - inner auth: - ak: '' sk: '' tags: '' - ak: '' sk: '' tags: ''
|
mysql库表设计
桶信息:cloud_process_bucket
字段名 |
类型 |
描述 |
id |
long |
库表id,自增 |
creator |
varchar(32) |
创建者 |
modifier |
varchar(32) |
修改者 |
create_time |
datetime |
创建时间 |
modify_time |
datetime |
修改时间 |
cloud |
varchar(32) |
哪个云 |
region |
varchar(32) |
归属哪个区域 |
bucket_name |
varchar(32) |
桶名称 |
owner |
varchar(128) |
业务方 |
remark |
varchar(256) |
备注信息 |
桶鉴权:cloud_process_bucket_auth
字段名 |
类型 |
描述 |
id |
long |
库表id,自增 |
create_time |
datetime |
创建时间 |
modify_time |
datetime |
修改时间 |
bucket_id |
long |
关联id |
ak |
varchar(32) |
ak |
sk |
varchar(32) |
sk |
tags |
varchar(256) |
标签 |
桶域名:cloud_process_bucket_domain
字段名 |
类型 |
描述 |
id |
long |
库表id,自增 |
create_time |
datetime |
创建时间 |
modify_time |
datetime |
修改时间 |
bucket_id |
long |
关联id |
host |
varchar(128) |
域名 |
tags |
varchar(256) |
标签 |