发明名称 一种海量数据多线程并行处理中的负载均衡方法
摘要 本发明公开了一种海量数据多线程并行处理中的负载均衡方法,服务端利用多个并行的数据处理线程对接收到的数据进行处理,对于每一个新接收到的数据包,服务端按照以下方法为其分配数据处理线程:判断是否存在当前待处理数据包个数C为0或者已处理数据包个数n为0的数据处理线程,如是,则将新收到的数据包分配给其中任意一个数据处理线程;如否,则将新收到的数据包分配给相对空闲率最高的数据处理线程。本发明根据相对空闲率对每个数据处理线程进行合理数据分配,能够显著提高系统对海量数据的并行处理、密集计算的能力,其算法实现简单,占用资源极少。
申请公布号 CN102866922A 申请公布日期 2013.01.09
申请号 CN201210315602.7 申请日期 2012.08.31
申请人 河海大学 发明人 彭建华;徐立中;石爱业;周惠;郭宇燕;高红民
分类号 G06F9/50(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 许方
主权项 1.一种海量数据多线程并行处理中的负载均衡方法,服务端利用多个并行的数据处理线程对接收到的数据进行处理,其特征在于:对于每一个新接收到的数据包,服务端按照以下方法为其分配数据处理线程:判断是否存在当前待处理数据包个数<i>C</i>为0或者已处理数据包个数<i>n</i>为0的数据处理线程,如是,则将新收到的数据包分配给其中任意一个数据处理线程;如否,则将新收到的数据包分配给相对空闲率最高的数据处理线程,所述数据处理线程的相对空闲率按照以下公式计算:<img file="2012103156027100001DEST_PATH_IMAGE002.GIF" wi="62" he="46" />式中,<img file="2012103156027100001DEST_PATH_IMAGE004.GIF" wi="22" he="18" />为相对空闲率;<img file="2012103156027100001DEST_PATH_IMAGE006.GIF" wi="17" he="20" />为该数据处理线程当前待处理数据包个数;<img file="2012103156027100001DEST_PATH_IMAGE008.GIF" wi="18" he="25" />为该数据处理线程在处理<i>n</i>个数据包后的数据处理效率,其表达式为如下:<img file="2012103156027100001DEST_PATH_IMAGE010.GIF" wi="208" he="81" />其中,<i>n</i>为已处理数据包个数,<img file="2012103156027100001DEST_PATH_IMAGE012.GIF" wi="16" he="25" />为该数据处理线程处理第<i>n</i>个数据包所耗费时间。
地址 210098 江苏省南京市鼓楼区西康路1号