一种多核架构下流量限速无锁并发实现的方法
基本信息
申请号 | CN202110122692.7 | 申请日 | - |
公开(公告)号 | CN112799861A | 公开(公告)日 | 2021-05-14 |
申请公布号 | CN112799861A | 申请公布日 | 2021-05-14 |
分类号 | G06F9/54;H04L12/819 | 分类 | 计算;推算;计数; |
发明人 | 靳龙 | 申请(专利权)人 | 上海弘积信息科技有限公司 |
代理机构 | 北京盛凡智荣知识产权代理有限公司 | 代理人 | 李朦 |
地址 | 201206 上海市浦东新区新金桥路58号银东大厦23A | ||
法律状态 | - |
摘要
摘要 | 本发明公开了一种多核架构下流量限速无锁并发实现的方法,将令牌桶设计成循环免锁队列,队列长度为N;每一个处理数据流的CPU核分配一个令牌桶,处理数据流的核数为M;一个单独CPU核轮询访问M个免锁队列,往队列添加令牌;以C0表示添加令牌的CPU核,C0周期轮询给各个队列添加令牌,每个周期C0首先计算各个队列消耗令牌比例,把这个周期要添加的令牌按比例添加到各个队列中;处理数据流的CPU核,通过计算数据报大小获取自己队列的令牌,如果令牌不够,根据策略选择缓存或丢弃数据报文;本发明通过把令牌桶分布在不用CPU处理核上,把生产令牌核消费令牌分别处理,通过免锁队列实现令牌计算。 |
