RGC国际化新架构
2017-04-07 10:58:10 0 举报
RGC国际化新架构是一种全新的、面向全球的架构,旨在帮助RGC更好地适应全球化的挑战和机遇。该架构采用了先进的技术和创新的方法,以实现更高效、更灵活、更安全的业务运营。它不仅能够支持RGC在全球范围内开展业务,还能够为客户提供更加优质、个性化的服务。总之,RGC国际化新架构为RGC带来了巨大的发展潜力,将有助于其在全球市场上取得更大的成功。
作者其他创作
大纲/内容
周期性持久化
Yes
其他
No
多个线程
1. write table切read_table2. read_table- total_table3. clear read_table
查cache未命中,根据ak类型查app表或user表,调用鉴权函数返回结果
loop
1. 实时库合并到全量库2. 删除实时库
达到配额发送间隔&& 有更新
顺序更新可写实时库
更新天级tableupdate持久化更新列表update 配额更新列表
1. 表设计2. Timer设计3. 持久化redis封装4. 标准化的服务和client sender 封装6. bthread线程7. 主逻辑
查cache未命中查数据库,先查app表,再查user表,调用鉴权函数返回结果
其中:readonly_table write_table total_table total_flag 都需要持久化write_table、readonly_table设内存上限
更新请求
query
scan pthread
no
sleep
大于time_interval(1年或更长时间)
set total_flag=false
update
pop element
lib
async batch send old table to client
消费持久化服务
clear total_table
需要加载全量库标识
更新秒级table
SDK-Proxy
接受请求的线程
切换新table
接受用户状态更新的线程
s_queue empty?
查total_table + read_table + write_table
读天级table
total_flag== true
遍历数据库
秒级table设计:1. 减少锁的粒度,整体做hash分片逻辑:2. 记录本地时间,切换下一秒的操作由timer触发,触发切换后,启用新table,旧table变只读,提交
clear total_table
提交秒级table到队列
更新全量库
更新
批量持久化,设置过期时间
设置全量标识:完成加载
顺序更新write_table
消费推送单元
新的一天?
周期性发配额
API-Proxy
新的一秒?
= merge interval(天)
全量库标识:完成加载
采用与秒级table一样的设计,timer到改为只读,合并全天表数据,提交待持久化线程
全量库标识: 完成加载
鉴权不通过
是否需要持久化
计费平台
基础存储(mongo,redis)
命中
redis
0 条评论
下一页
为你推荐
查看更多