[发明专利]分布式系统的线程管理方法和装置在审
| 申请号: | 201610377759.0 | 申请日: | 2016-05-31 |
| 公开(公告)号: | CN107450978A | 公开(公告)日: | 2017-12-08 |
| 发明(设计)人: | 何余 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 北京英赛嘉华知识产权代理有限责任公司11204 | 代理人: | 王达佐,马晓亚 |
| 地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分布式 系统 线程 管理 方法 装置 | ||
技术领域
本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及分布式系统的线程管理方法和装置。
背景技术
分布式是指两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。线程是指进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派CPU的基本单位指运行中的程序的调度单位。
在Java应用开发中,多线程操作是比较常见的。这其中大多数都是单一进程的线程池模式。但是在使用线程池过程中,如果要控制分布式线程池线程总数量,例如有10个进程时,需要实现只运行一个线程的控制,此时只能人工操控进程线程的开关。并且需要随时关注进程的运行情况,如宕机时需要手动重启,配置相对复杂。因此在开发、测试等实际工作中,需要发明一种实现分布式线程池的管理方法,以简化及控制多线程池的线程数量。
发明内容
本申请的目的在于提出一种改进的分布式系统的线程管理方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种分布式系统的线程管理方法,所述分布式系统包括至少一个服务器以及运行于所述至少一个服务器上的至少两个进程,每个进程都对应有一个线程池,其特征在于,所述方法包括:获取各个线程池申请线程标识的请求;选择预先设置的线程标识列表中状态为空闲的线程标识,其中,所述线程标识列表记录有线程标识以及线程标识的状态,所述状态包括空闲和非空闲;向所述 线程池分配所选择的线程标识,使得所述线程池创建所分配的线程标识对应的线程;将线程标识列表中所述线程对应的线程标识的状态修改为非空闲。
在一些实施例中,所述选择预先设置的线程标识列表中状态为空闲的线程标识,包括:判断预先设置的线程标识列表中状态为空闲的线程标识的数量是否大于所述线程池所需线程标识的数目,其中,所述线程池所需线程标识的数目是根据所述线程标识列表中包括的线程标识的总数以及所述线程池的数量确定的;如果是,则选择所述线程池所需线程标识的数目的预先设置的线程标识列表中状态为空闲的线程标识;如果否,则选择预先设置的线程标识列表中所有状态为空闲的线程标识。
在一些实施例中,所述方法还包括:按照预先设置的第一时间周期,定时获取各个线程池中线程标识的数目;比较所述各个线程池中线程标识的数目与所述线程池所需线程标识的数目;如果所述线程池中线程标识的数目大于所述线程池所需线程标识的数目,则回收所述线程池的线程标识,使得所述线程池中线程标识的数目与所述线程池所需线程标识的数目相等,并且使得所述线程池销毁所回收的线程标识对应的线程;如果所述线程池中线程标识的数目小于所述线程池所需线程标识的数目,则向所述线程池分配线程标识,使得所述线程池中线程标识的数目与所述线程池所需线程标识的数目相等,并且使得所述线程池创建所分配的线程标识对应的线程。
在一些实施例中,所述方法还包括:按照预先设置的第二时间周期,定时获取各个线程池中线程的执行信息,以判断是否存在因执行时间超过预定时间而被销毁的线程;如果是,则将所述线程标识列表中被销毁的线程的线程标识的状态修改为空闲。
在一些实施例中,所述方法还包括;响应于监测到服务器出现宕机的情况,将所述线程标识列表中运行于所述服务器上的进程对应的线程池中线程的线程标识的状态修改为空闲状态;响应于监测到进程的关闭,将所述进程对应的线程池中线程的线程标识的状态修改为空闲状态。
第二方面,本申请提供了一种分布式系统的线程管理装置,所述分布式系统包括至少一个服务器以及运行于所述至少一个服务器上的至少两个进程,每个进程都对应有一个线程池,其特征在于,所述装置包括:
请求获取单元,配置用于获取各个线程池申请线程标识的请求;选择单元,配置用于选择预先设置的线程标识列表中状态为空闲的线程标识,其中,所述线程标识列表记录有线程标识以及线程标识的状态,所述状态包括空闲和非空闲;分配单元,配置用于向所述线程池分配所选择的线程标识,使得所述线程池创建所分配的线程标识对应的线程;修改单元,配置用于将线程标识列表中所述线程对应的线程标识的状态修改为非空闲。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610377759.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:任务处理方法及装置
- 下一篇:运行自动化装置的方法以及自动化装置





