节点端
流量统计方案
是否命中判断:x_hyper_cache或者x_hyper_cache_l2 的状态为 HIT、REVALIDATED、UPDATING、STALE
如果命中:统计命中流量,命中次数 +1
如果未命中:统计未命中流量和回源流量
持久化方案
暂定 方案2
方案1:
1. pipe读取流量日志
goroutine 1:
2. 把日志时间戳转分钟时间戳,如果分钟时间戳与前一个分钟时间戳一致,则写入缓冲区
3. 如果缓冲区满了或者时间戳分钟不一致,则写入levelDB1, key为 prefix+分钟时间戳+序列号 ,value为缓冲区的日志
goroutine 2:
4. 通过前缀 prefix+当前处理的分钟时间戳 迭代读取levelDB1,把这一分钟的数据预处理,然后上报,并且levelDB1删除该分钟的日志
5. 如果上报失败,写入levelDB2, (数据结构为FIFO队列)
6. 定时读取levelDB2,上报
方案2:
goroutine 1:
1. pipe读取流量日志,写入缓冲区
2. 定时1s触发|缓冲区填满,以站点+分钟时间戳为key聚合缓冲区数据,存入leveldb队列
goroutine 2|1:
1. 定时1分钟读取leveldb队列的数据,以站点+分钟时间戳为key,聚合流量,上报。安全日志方案
1. pipe读取安全日志
2. 使用限流器丢弃部分日志 (日志过多时丢弃部分日志)
3. 写入缓冲区
4. [缓冲区满了|定时触发] 上报日志
节点状态统计
上报频率:15s
内存使用率: 瞬时内存使用率 (0-10000)
CPU使用率:每秒统计一次,上报时候是那一秒的瞬时CPU使用率 (0-10000)
带宽:15s的平均带宽,单位:Byte/s
连接数:TCP连接数
管理端
站点流量
统计规则
节点状态统计
联系邮箱:sales@99cdn.com
授权平台:www.99cdn.com
云平台:www.vmrack.com