[发明专利]一种分布式环境多线程并发调度的方法有效
申请号: | 201911373184.5 | 申请日: | 2019-12-27 |
公开(公告)号: | CN111124651B | 公开(公告)日: | 2023-05-23 |
发明(设计)人: | 王秀英;许继光 | 申请(专利权)人: | 中通服公众信息产业股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 济南智圆行方专利代理事务所(普通合伙企业) 37231 | 代理人: | 张玉琳 |
地址: | 830000 新疆维*** | 国省代码: | 新疆;65 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 环境 多线程 并发 调度 方法 | ||
1.一种分布式环境多线程并发调度的方法,其特征在于,将应用系统工作流引擎进行服务分解,每个服务负责完成工作流引擎的某一功能,服务的实现通过分布式多线程并发执行完成,包括,
S1、将需要处理的工单信息统一放置于在途池;在途池只存储施工中的工单及相关信息,施工完毕的工单及时出池,使得工单池各表数据量最小,确保高水平数据处理效率;
S2、遍历在途池内的工单状态,线程服务是否处理某一工单取决于工单的状态,工单的状态信息在数据库统一存储;状态转换遵循统一调度规则;
S3、通过线程池框架对各应用服务器的线程服务进行管理,包括S310、线程注册;S320、线程实例化;S330、线程执行;S340、线程休睡眠;S350、线程结束;
其中,所述S1中,将需要处理的工单信息统一放置于在途池;通过工单缓存机制对在途池中的工单数量进行控制,在工单积压量达到一定阈值时,对阈值优先级后的工单进行缓存,以确保优先级调度效率;当工单积压量减少到某一阈值时,对缓存的工单进行反缓存处理。
2.根据权利要求1所述的分布式环境多线程并发调度的方法,其特征在于,所述S310线程注册的方法为:
S311、确定应用域;
S312、确定应用服务;
S313、确定线程服务;
S314、配置线程运行信息。
3.根据权利要求2所述的分布式环境多线程并发调度的方法,其特征在于,所述S314配置线程运行信息包括设置线程并发数,设置线程业务峰值,设置线程日志模式,设置线程运行模式;
设置线程运行模式包括时间区、抓去量、休眠间隔设置。
4.根据权利要求1所述的分布式环境多线程并发调度的方法,其特征在于,所述S320线程实例化的方法为,
S321、创建应用线程池;
S322、加载应用注册线程信息;
S323、创建线程实例;
S324、初始化线程实例;
S325、线程实例就绪。
5.根据权利要求1所述的分布式环境多线程并发调度的方法,其特征在于,所述S330、线程执行的方法为,
S331、扫描本类服务待处理量;
S332、计算当前线程运行优先级;
S333、根据线程优先级规则,对线程发放令牌;在发放线程执行令牌时,根据线程相对业务处理量进行优先级控制,确保同一类线程服务业务处理均衡,设备资源利用率均衡;
S334、按照令牌顺序抓取工单;
S335、对成功抓取的工单进行执行业务处理。
6.根据权利要求5所述的分布式环境多线程并发调度的方法,其特征在于,所述S334按照令牌顺序抓取工单时,采用数据滚动锁策略,执行数据的查询和锁定,并跳过被锁定的数据继续执行查询和锁定。
7.根据权利要求1所述的分布式环境多线程并发调度的方法,其特征在于,所述S340线程休睡眠方法为,
S341、计算本次活动处理是否达到上限值;
S342、如果S341的判定结果达到上限值,则进入线程休眠;
S343、如果S341的判定结果未达到上限值,则计算线程是否需要睡眠;
S344、如果S343的判定结果为线程需要睡眠,则让线程转入睡眠;
S345、如果S343的判定结果为线程不需要睡眠,则让线程转入休眠。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中通服公众信息产业股份有限公司,未经中通服公众信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911373184.5/1.html,转载请声明来源钻瓜专利网。