【技术实现步骤摘要】
一种Java线程池动态扩容缩容方法
[0001]本专利技术涉及Java
,具体为一种Java线程池动态扩容缩容方法。
技术介绍
[0002]多线程是我们常用的并发编程工具,也是性能优化在多核处理器时代常用的手段。线程池可以减少系统在创建和销毁线程上所花的时间,充分利用服务器的多核资源,为用户带来更快的响应时间和更高的任务吞吐量。
[0003]Java语言就提供了原生线程池的实现,使得用户在编程方面创建一个多线程任务执行线程池的任务简单不少,但线程池的设置是否合理与任务类型、系统CPU资源息息相关。一但参数设置不合理要么忙死,要么闲死。Java提供的原生线程池的工作机制如图2所示。
[0004]Java线程池在内部实际上构建了一个任务生产者和消费者模型,将线程和任务两者解耦,并不直接关联,从而使得任务可排队缓冲执行,复用线程。线程池的运行主要分成两部分:任务调度、线程分配。任务调度部分是生产者角色,当任务提交以后,线程池会判断该任务后续的流转:
[0005](1)直接申请线程执行该任务;
...
【技术保护点】
【技术特征摘要】
1.一种Java线程池动态扩容缩容方法,其特征在于:包括以下步骤:A、采集线程池度量数据;B、分析线程池度量数据;C、线程池自动扩缩容。2.根据权利要求1所述的一种Java线程池动态扩容缩容方法,其特征在于:所述步骤A具体如下:对线程池的度量指标进行实时观测,并定时采样记录,通过对Java线程池进行扩展和埋点,得到了关键指标的度量数据。3.根据权利要求1所述的一种Java线程池动态扩容缩容方法,其特征在于:所述步骤B具体如下...
【专利技术属性】
技术研发人员:李强,宋牮,陈宪斌,彭滨,
申请(专利权)人:北京致远互联软件股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。