[发明专利]一种java线程池分级处理方法和装置在审
申请号: | 201810935659.4 | 申请日: | 2018-08-16 |
公开(公告)号: | CN110837401A | 公开(公告)日: | 2020-02-25 |
发明(设计)人: | 段涛;叶国华;司孝波;陈冬 | 申请(专利权)人: | 苏宁易购集团股份有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F9/48 |
代理公司: | 北京市万慧达律师事务所 11111 | 代理人: | 黄玉东 |
地址: | 210000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 java 线程 分级 处理 方法 装置 | ||
1.一种java线程池分级处理方法,其特征在于,包括:
步骤S1,基于业务请求的类型分级,并配置与分级数目相等数量的线程池;
步骤S2,分别设定各线程池的优先级别,形成由高到低不同优先级别的线程池;
步骤S3,设置当前业务请求的优先级别,依次筛选出适用于当前业务请求的线程池;其中,所述适用于当前业务请求的线程池包括与当前业务请求优先级别匹配,以及比当前业务请求优先级别低的线程池;
步骤S4,在适用的多个线程池中,优先调用优先级别高且有能力处理当前业务请求的线程池处理当前业务请求;
步骤S5,若当前业务请求未被处理,则将当前业务请求加入任务缓冲队列,由调度器重新调度分配返回步骤S3。
2.根据权利要求1所述的方法,其特征在于,分别设定各线程池的优先级别,形成由高到低不同优先级别的线程池的方法包括:
所述业务请求类型分为高优先级业务请求、中优先级业务请求和低优先级业务请求,配置的线程池类型对应包括高优先级线程池、中优先级线程池和低优先级线程池;其中,
所述高优先级线程池用于处理高优先级业务请求;
所述中优先级线程池用于优先处理中优先级业务请求,以及能够处理高优先级业务请求;
所述低优先级业务请求用于优先处理低优先级业务请求,以及能够处理中优先级业务请求或者高优先级业务请求。
3.根据权利要求1所述的方法,其特征在于,各所述线程池的大小参考应用的特点对应设定;
当针对CPU密集型应用时,所述线程池的大小n=i+1,当针对IO密集型应用时,所述线程池的大小n=2i+1;
所述i表示处理器芯片的核数,所述n表示线程池中线程的个数。
4.根据权利要求2所述的方法,其特征在于,设置当前业务请求的优先级别,依次筛选出适用于当前业务请求的线程池的方法包括:
获取当前业务请求,调用异步执行处理方法asyncExecute设定当前业务请求的优先级别;
基于当前业务请求的优先级别调用线程分配处理模块distributeTask对线程池进行筛选,获取适用于当前业务请求的线程池;
所述筛选逻辑为筛选出与当前业务请求优先级别匹配,以及比当前业务请求优先级别低的线程池。
5.根据权利要求2所述的方法,其特征在于,在适用的多个线程池中,优先调用优先级别高且有能力处理当前业务请求的线程池处理当前业务请求的方法包括:
将适用的线程池按照优先级别由高到低顺序排列;
通过告警器逐一监测顺序排列的线程池的触发状态,当线程池未被触发则表示有能力处理当前业务请求;
从未被触发告警的线程池中优先调用优先级别高的线程池对当前业务请求进行处理。
6.根据权利要求5所述的方法,其特征在于,所述线程池触发状态的判断条件为:
当线程池中活跃线程数量超过线程池总线程数量的85%,则判断该线程池被触发,否则判断该线程池未被触发。
7.根据权利要求5所述的方法,其特征在于,在告警器逐一监测顺序排列的线程池触发状态时,还会通过监测器将当前线程池的监测结果发送至管理人员监控;
所述监测结果包括线程池标识、线程池总线程数量、活跃线程数量、线程池的触发状态。
8.根据权利要求5所述的方法,其特征在于,若当前业务请求未被处理,则将当前业务请求加入任务缓冲队列,由调度器重新调度分配返回步骤S3的方法包括:
在当前业务请求为低优先级业务请求且未被处理时,增加判断中优先级线程池是否有能力处理当前业务请求,并在判断结果为是时直接调用中优先级线程池处理,否则,将当前业务请求加入任务缓冲队列,由调度器重新调度分配返回步骤S3;或者,
在当前业务请求为高优先级业务请求/中优先级业务请求且未被处理时,直接将当前业务请求加入任务缓冲队列,由调度器重新调度分配返回步骤S3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏宁易购集团股份有限公司,未经苏宁易购集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810935659.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:点云的分割方法、装置及计算机存储介质
- 下一篇:业务逻辑拓扑的生成方法及装置