[发明专利]一种并行计数器、服务器和一种计数方法有效
| 申请号: | 201610974314.0 | 申请日: | 2016-10-28 |
| 公开(公告)号: | CN108021597B | 公开(公告)日: | 2022-02-08 |
| 发明(设计)人: | 程正君;高超;丁宇 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F16/958 | 分类号: | G06F16/958 |
| 代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 李辉 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 并行 计数器 服务器 计数 方法 | ||
1.一种并行计数器,其特征在于,所述并行计数器设置于服务器中,所述并行计数器用于针对所述服务器的业务服务进行计数,所述并行计数器包括分发模块、求和模块和至少两个计数模块:
所述分发模块用于将接收到的线程向所述至少两个计数模块分发,所述线程携带有所述业务服务的计数需求;
所述至少两个计数模块中的每一个计数模块都有一个对应的存储位置,用于存储该计数模块的原计数值;第一计数模块为所述至少两个计数模块中的一个计数模块,用于接收所述分发模块分发的第一线程,所述第一线程为所述分发模块接收到的线程中的一个线程;还用于从所述第一计数模块对应的存储位置中取出第一计数模块的原计数值,根据所述第一线程携带的计数需求更改所述第一计数模块的原计数值,将更改后的计数值作为所述第一计数模块的原计数值更新到所述第一计数模块对应的存储位置中;
所述求和模块用于将所述至少两个计数模块的原计数值进行求和得到计数总值,所述计数总值为针对所述业务服务的计数值。
2.根据权利要求1所述的并行计数器,其特征在于,所述并行计数器的第二计数模块为所述至少两个计数模块中的一个计数模块,用于接收所述分发模块分发的第二线程,所述第二线程为所述分发模块接收到的线程中的一个线程;还用于从所述第二计数模块对应的存储位置中取出第二计数模块的原计数值,根据所述第二线程携带的计数需求更改所述第二计数模块的原计数值,将更改后的计数值作为所述第二计数模块的原计数值更新到所述第二计数模块对应的存储位置中。
3.根据权利要求1所述的并行计数器,其特征在于,所述第一计数模块用于根据所述第一线程携带的计数需求更改所述第一计数模块的原计数值,将更改后的计数值作为所述第一计数模块的原计数值更新到所述第一计数模块对应的存储位置中,包括:
所述第一计数模块在根据所述第一线程的计数需求更改所述第一计数模块的原计数值之后,用于从所述第一计数模块对应的存储位置调取所述第一计数模块的原计数值;
所述第一计数模块用于比对根据所述第一线程的计数需求更改所述第一计数模块的原计数值之前和之后所调取的所述第一计数模块的原计数值是否相同;若比对结果为相同,所述第一计数模块用于将更改后的计数值作为所述第一计数模块的原计数值更新到所述第一计数模块对应的存储位置中。
4.根据权利要求3所述的并行计数器,其特征在于,若所述比对结果为不同,所述第一计数模块将用于重新执行所述从所述第一计数模块对应的存储位置中取出第一计数模块的原计数值,根据所述第一线程携带的计数需求更改所述第一计数模块的原计数值。
5.根据权利要求1至4任意一项所述的并行计数器,其特征在于,所述分发模块用于向所述第一计数模块分发所述第一线程,包括:
所述分发模块用于根据所述第一线程的特征值进行散列计算得到对应的散列值;
所述分发模块用于根据第一线程的散列值从所述至少两个计数模块中匹配到所述第一计数模块,向所述第一计数模块分发所述第一线程。
6.根据权利要求1所述的并行计数器,其特征在于,所述并行计数器设置在所述服务器的内存中。
7.一种并行计数方法,其特征在于,应用于并行计数器,所述并行计数器设置于服务器中,所述并行计数器用于针对所述服务器的业务服务进行计数,所述并行计数器包括至少两个计数模块,所述至少两个计数模块中的每一个计数模块都有一个对应的存储位置,用于存储该计数模块的原计数值,所述方法包括:
接收线程,所述线程携带有所述业务服务的计数需求;
向第一计数模块分发第一线程,所述第一计数模块为所述至少两个计数模块中的一个计数模块,所述第一线程为接收到的线程中的一个线程;
从所述第一计数模块对应的存储位置中取出第一计数模块的原计数值;
根据所述第一线程携带的计数需求更改所述第一计数模块的原计数值,将更改后的计数值作为所述第一计数模块的原计数值更新到所述第一计数模块对应的存储位置中;
将所述至少两个计数模块的原计数值进行求和得到计数总值,所述计数总值为针对所述业务服务的计数值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610974314.0/1.html,转载请声明来源钻瓜专利网。





