【技术实现步骤摘要】
一种流量统计方法、装置、系统及存储介质
本专利技术涉及流量控制领域,尤其涉及一种流量统计方法、装置、系统及存储介质。
技术介绍
在分布式系统中,为了使整个系统IO资源能够得到合理利用,在很多场景下都会进行IO流量控制,因此限流技术成为分布式系统资源管理的一项关键技术。限流的平滑度、实时性、以及限流后读写性能则是衡量限流技术的关键指标。其中,流量统计则是限流技术的数据基础和决策依据,如何准确、实时地进行记录流量数据来完成流量统计也随之成为影响限流技术效果的重要因素。目前,为了进行更精确的限流,通常使用流量计数器的方法来记录流量数据。但是由于在一个统计周期内,计数器可能会对缓存进行清零,而清零的过程中收不到数据,而重新计数的时候又可能会累积了清零过程中产生的数据造成流量突涨,但这一突涨是由于数据挤压产生的并不是真实流量的突涨。这些因为计数器清零频率与统计周期不一致导致的种种缺陷会使流量数据产生抖动,无法实时、准确地统计流量,也就不能实时、准确地采取限流措施,会在一定程度上影响系统资源的有效利用。专利技术内 ...
【技术保护点】
1.一种流量统计方法,其特征在于,所述方法通过使用环形队列存储结构记录流量数据,其中所述环形队列存储结构包括环形队列、开始指针和结束指针,所述方法包括:/n从所述开始指针指向的队列元素开始,使用所述环形队列中的每一队列元素依次记录每次收集到的流量数据并更新所述结束指针,直至当前统计周期结束;/n累加从所述开始指针开始到所述结束指针结束的所有队列元素所记录的流量数据得到当前统计周期内的总流量值。/n
【技术特征摘要】
1.一种流量统计方法,其特征在于,所述方法通过使用环形队列存储结构记录流量数据,其中所述环形队列存储结构包括环形队列、开始指针和结束指针,所述方法包括:
从所述开始指针指向的队列元素开始,使用所述环形队列中的每一队列元素依次记录每次收集到的流量数据并更新所述结束指针,直至当前统计周期结束;
累加从所述开始指针开始到所述结束指针结束的所有队列元素所记录的流量数据得到当前统计周期内的总流量值。
2.根据权利要求1所述的方法,其特征在于,所述环形队列存储结构还包括
总流量,用于累计所述当前统计周期内的总流量值;
相应地,累加从所述开始指针开始到所述结束指针结束的所有队列元素所记录的流量数据得到当前统计周期内的总流量值,包括:
将所述总流量重置为零;
在所述使用所述环形队列中的每一队列元素依次记录每次收集到的流量数据之后,在所述总流量记录的第一总流量值上累加所述每次收集到的流量数据得到第二总流量值;
将所述总流量的值更新为第二总流量值。
3.根据权利要求1或权利要求2所述的方法,其特征在于,所述方法还包括:
初始化所述环形队列存储结构。
4.根据权利要求1或权利要求2所述的方法,其特征在于,所述方法还包括:
重置开始指针;
进行下一个统计周期的流量统计。
5.根据权利要求1或权利要求2所述,其特征在于,所述使用所述环形队列中的每一队列元素依次记录每次收集到的流量数据并更新所述结束指针,包括:
接收此次收集到的流量数据;
获取所述环形队列的下一个队列元素作为当前队列元素;...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。