【技术实现步骤摘要】
本专利技术属于软件系统
,尤其涉及一种基于redis实现多worker协同的系统。
技术介绍
随着互联网大数据时代的到来,越来越多的计算任务task需要交多个计算机(worker)组成的集群来并发处理,由于计算任务中的task对资源(cpu/io/disk)的消耗差别很大,这个时候特别需要合理的安排任务,以防止某类任务占用过多资源造成系统过载,进而影响系统的稳定行和可靠性,因此特别需要一个高效稳定的解决方案来应对此问题。
技术实现思路
本专利技术所解决的技术问题采用以下技术方案来实现:提供一种基于redis实现多worker协同的系统,是分布式计算的集群中对计算任务task协同控制速度的通用解决技术方案。一种基于redis实现多worker协同的系统,开始重新获取一批待处理的任务,以任务类名称为key进行汇总数量,其中redis计数器根据以task的任务名为key建立生存周期为1分钟的key-value值,其中key值是任务名称,value值为累加数值,发送key的任务汇总数量到redis请求对key的value进行累加,其中由于集群中的worker并行请求,所以汇总到redis里面后会进行排队,然后串行处理worker的key的累加请求,对请求的数量进行value累加,返给worker累加后的数值,累加后value值和系统中的每分钟的限量值进行比较,如果没有超过限额,则执行这批key名称任务的task,如果部分超额则拒绝超额部分并且执行未超额部分,如果全部超额,则全部拒绝执行任务task。本专利技术的有益效果为:本系统用redis来实现计数器功能,因 ...
【技术保护点】
一种基于redis实现多worker协同的系统,其特征在于:开始重新获取一批待处理的任务,以任务类名称为key进行汇总数量,其中redis计数器根据以task的任务名为key建立生存周期为1分钟的key‑value值,其中key值是任务名称,value值为累加数值,发送key的任务汇总数量到redis请求对key的value进行累加,其中由于集群中的worker并行请求,所以汇总到redis里面后会进行排队,然后串行处理worker的key的累加请求,对请求的数量进行value累加,返给worker累加后的数值,累加后value值和系统中的每分钟的限量值进行比较,如果没有超过限额,则执行这批key名称任务的task,如果部分超额则拒绝超额部分并且执行未超额部分,如果全部超额,则全部拒绝执行任务task。
【技术特征摘要】
1.一种基于redis实现多worker协同的系统,其特征在于:开始重新获取一批待处理的任务,以任务类名称为key进行汇总数量,其中redis计数器根据以task的任务名为key建立生存周期为1分钟的key-value值,其中key值是任务名称,value值为累加数值,发送key的任务汇总数量到redis请求对key的value进行累加,其中由于集群中的w...
【专利技术属性】
技术研发人员:崔运海,
申请(专利权)人:天津海量信息技术股份有限公司,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。