高级多线程管理的应用系统的制作方法

文档序号:7968974阅读:122来源:国知局
专利名称:高级多线程管理的应用系统的制作方法
技术领域
本发明涉及一种计算机网络高级多线程管理的应用系统,特别是涉及一种针对规模较大,运行情况较为复杂的计算机网络的安全性和可靠性管理系统。本发明可应用于网络类计算机系统。
背景技术
线程与多线程定义线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度。多线程是一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间互相独立。多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。
在一个规模较大,运行情况较为复杂的计算机网络中,要进行有效的安全性和可靠性管理,就必须有能力在占用很少系统资源的条件下,可以对大量随机并发事件作出及时地反映和有效的处理。这些随机并发事件可能有多种类型,例如大量的客户机连网与断线的情况,某种受监视事件在网络中大量随机发生等等。采用单线程技术显然无法满足上述网络管理的要求,而采用常规的多线程技术,虽然可以提供一定的并发处理能力,但仍然存在如下严重缺陷1.在并发事件较多时,会产生大量线程,占用过多的系统资源。严重时可以导致系统崩溃;
2.大量地创建和终止线程不仅占用过多的系统资源,还会明显地降低系统的反应速度,因此无法实现对计算机网络的实时管理;3.无法保证每一个线程自身的可靠运行,因此,也就大大降低了整个系统的可靠性。
在研发综合型网络管理平台中必须以多线程的方式处理大量的并发事件,特别是数量众多的网络终端随机联网的情况。目前处理这种并发事件的一般技术是利用线性管理的多线程技术,这种传统技术的主要问题是占用系统资源过多,不适合大规模的网络环境。

发明内容
本发明的目的在于提供一种高级多线程管理系统,由此可以在占用很少操作系统资源的条件下,即可对大量的并发事件作出及时地反映和处理,又可以保证对每个线程实施有效的可靠性管理。
本发明的目的由以下技术方案实现高级多线程管理的应用系统,包括有高级线程管理器和自适应线程池,所述高级线程管理器设定有线程的名称、线程的参数、线程的序号、线程状态记数。高级线程管理器需向系统申请内存,创建被管理线程,并向系统注册一个定时器。所述自适应线程池是由高级线程管理器创建的,线程个数为指定范围的最小值,针对线程池中的每个线程,管理线程都设置超时时间。
如上所述的高级多线程管理的应用系统,所述的高级线程管理器本身只作线程的监视和恢复,逻辑非常简单,能够保证该线程的高可靠性和高稳定性。
如上所述的高级多线程管理的应用系统,所述的线程状态记数一般初始化为3,初始化完成后,高级线程管理器根据线程的基本信息向系统申请内存。
如上所述的高级多线程管理的应用系统,所述的被管理的线程启动后需要向系统注册一个定时器,该定时器的周期应小于高级线程管理器定时周期的一半。
线程的恢复机制高级多线程管理器向系统注册一个定时器,被管理线程也注册一个定时器,按照不同的定时周期,被管理线程在每个周期到期时给高级多线程管理器发送该线程的状态记数并把状态更新为3,高级多线程管理器在每个周期到期时把线程状态记数减1,当线程状态记数为0时,则表示对应的线程出现异常,这时高级多线程管理器回收该线程的资源,销毁线程并重新启动该线程使其正常工作。以上的方式建立了被管理线程的恢复机制,保证了系统的高可靠性。
如上所述的高级多线程管理的应用系统,所述自适应线程池的链表数大于当前线程个数时,管理线程创建新的线程;当链表数大于当前线程个数,并且当前线程数等于指定范围的最大值时,管理线程不创建新的线程;当链表数小于当前线程数,并且当前线程数大于最小值时,管理线程关闭闲置的线程,使线程数等于最小值。
自适应线程池的链表用来保存要处理的任务信息,可以简单的视为是一个数组,数组的每一个元素保存一个任务信息,链表数即为该数组包含元素的个数。
本发明的优点与效果是本发明为计算机网络管理系统提供了极强的及时处理大量随机并发事件的能力。同时,在计算机线程层面为整个系统的可靠性提供了有力的保障。因此,基于本发明所实现的计算机网络管理系统将具有坚固的系统内核用以充分适应规模大,运行情况复杂的真实网络环境,同时可对网络中大量随机并发事件作出及时和可靠的反应与处理。因此,本发明所创造的高级多线程管理的应用系统对并发事件处理能力高、占用系统资源少;在本发明提供的多线程架构中,每个线程的可靠性得以保证,因此整个系统的可靠性大大提高。


图1为本发明高级多线程管理系统及管理点结构示意图;图2为本发明高级多线程管理系统被管理点结构示意图;图3为本发明高级多线程管理系统实际应用示意图。
具体实施例方式
本发明的技术组成主要包括有1.高级线程管理器高级线程管理器101、201负责监视被管理线程102、202的状态,当发现线程工作不正常时,能够恢复线程的正常运行。由于高级线程管理器101、201本身只作线程的监视和恢复之用,逻辑非常简单,所以可保证该线程的高可靠性和稳定性。
高级线程管理器的工作机制如下高级线程管理器需要工作在一个独立的线程中,在启动被管理的线程前,要作一些初始化的工作,每个被管理的线程需要事先定义好基本信息,这些信息包括线程的名称、线程的参数、线程的序号、线程状态记数(一般初始化为3)。
初始化完成后,高级线程管理器101、201根据线程的基本信息向系统申请内存,通过CPU发出指令来创建被管理线程,创建完所有的线程102、202后,高级线程管理器101、201则进入了监视状态,每隔一段CPU时钟周期就对每一个线程进行检察,完成对每一个线程102、202的监视。
同时高级线程管理器会向系统注册一个定时器,定时器每隔一段CPU时钟周期(具体时间可以根据情况调整)通知一次高级线程管理器,线程管理器收到通知后会把每个线程对应的线程状态记数减1,如果状态记数等于0,则表示该线程非正常工作,高级线程管理器需要发送终止该线程的指令并重新创建线程,使其恢复正常工作。
被管理的线程启动后也需要向系统注册一个定时器,该定时器的周期为高级线程管理器定时周期的一半,当被管理线程的定时到期后,要向线程管理器报告当前线程的状态,线程管理器收到后,更新对应线程的状态记数为3,即该被管理线程为活动状态。
通过以上的机制可以保证每个被管理线程的可靠性和稳定性。
2.自适应线程池自适应线程池103是一种可以根据实际需要自动调节线程个数的线程池。
自适应线程池的工作机制如下线程池的个数是在一个范围内根据情况进行调整,所以需要一个管理线程来负责线程个数的调度,该线程在内存中维护一个链表,此链表保存需要处理的任务信息。
管理线程首先创建线程池,线程个数为指定范围的最小值;
当链表数(即任务数)大于当前线程个数时,管理线程则创建新的线程来满足任务处理需要,处理完任务后,删除链表中对应的任务信息;当链表数大于当前线程个数,并且当前线程数等于指定范围的最大值时,管理线程不创建新的线程;当链表数小于当前线程数,并且当前线程数大于最小值时,管理线程关闭闲置的线程,使线程数等于最小值。
另外针对线程池中的每个线程,管理线程都设置超时时间,如果在规定的CPU时钟周期内,线程没有处理完任务,则回收该线程资源。
以上机制能高效的处理批量并发事件,并且不需要占用大量系统资源,当处理完毕后,还可自动回收线程,有效的提高了系统的处理能力和资源利用率。
3.网络系统中管理与被管理点多线程技术同时并用在网络系统中,管理端100在稳定、可靠运行的同时,还需要处理大量并发事件,需要利用高级线程管理器101以及自适应线程池103来提高系统的整体性能和稳定性。而被管理端200利用高级线程管理器201来保证系统的稳定、可靠,从而能非常稳定的和管理端100进行通讯,实现具体的管理功能。
下面将实际应用举例说明管理端首先创建高级线程管理器,由线程管理器来创建被管理的线程和自适应线程池。为了高效、可靠的处理并发事件,需要创建两个自适应线程池,一个线程池用来监听客户端的连接,另一个用来完成连接成功的逻辑处理。
例如当1000台计算机连接服务器时,登记这些计算机的信息并且给这些计算机发出一个消息通知。特别是当员工刚上班的时候,大量计算机同时开机并连接服务器,这时就需要应用线程管理器和自适应线程池相结合的高级多线程管理的应用系统。首先,客户端300连接模块301通过网卡发送连接指令到服务端302的网卡,服务端302创建高级线程管理器303,线程管理器303创建监听自适应线程池304和逻辑处理自适应线程池305。服务端302网卡接收到数据后,通过CPU、寄存器通知监听线程池304中的线程,该线程接收到连接指令并返回成功后,通过CPU发送通知到逻辑处理线程池305,由逻辑处理线程池305中的线程来处理,该线程接收客户端的登记信息并保存到数据库306中,然后再通过网卡发送消息通知客户端的网卡,客户端的网卡接收到数据后,通过CPU、寄存器进行处理,把信息转到客户端接收线程307,客户端接收线程收到消息通知后,显示消息内容。这个过程中,监听线程池304会根据客户端同时连接数来调整线程大小,一般情况下处理1000台计算机并发,线程范围在10~30个即可,逻辑处理线程池305也是根据需要处理的客户端数量来调整线程大小,由于逻辑处理部分不要求特别快速的处理速度,所以一般线程范围在5~10个即可,如果需要提高并行的处理速度,可以适当进行调整。以上说明中所描述的典型网络并发的处理方式,针对其它类似的并发处理皆可以采用本方法。
权利要求
1.高级多线程管理的应用系统,其特征在于包括有高级线程管理器和自适应线程池,并建立了被管理线程的恢复机制,所述高级线程管理器设定有线程的名称、线程的参数、线程的序号、线程状态记数,高级线程管理器需向系统申请内存,创建被管理线程,并向系统注册一个定时器,所述自适应线程池是由高级线程管理器创建的,线程个数为指定范围的最小值,针对线程池中的每个线程,管理线程都设置超时时间。
2.如权利要求1所述的高级多线程管理的应用系统,其特征在于高级线程管理器本身只作线程的监视和恢复。
3.如权利要求1所述的高级多线程管理的应用系统,其特征在于线程状态记数一般初始化为3,初始化完成后,高级线程管理器根据线程的基本信息向系统申请内存。
4.如权利要求1所述的高级多线程管理的应用系统,其特征在于被管理的线程启动后需要向系统注册一个定时器,该定时器的周期应小于高级线程管理器定时周期的一半。
5.如权利要求1所述的高级多线程管理的应用系统,其特征在于线程的恢复机制为高级多线程管理器向系统注册一个定时器,被管理线程也注册一个定时器,按照不同的定时周期,被管理线程在每个周期到期时给高级多线程管理器发送该线程的状态记数并把状态更新为3,高级多线程管理器在每个周期到期时把线程状态记数减1,当线程状态记数为0时,则表示对应的线程出现异常,这时高级多线程管理器回收该线程的资源,销毁线程并重新启动该线程使其正常工作。
6.如权利要求1所述的高级多线程管理的应用系统,其特征在于所述自适应线程池的链表数大于当前线程个数时,管理线程创建新的线程;当链表数大于当前线程个数,并且当前线程数等于指定范围的最大值时,管理线程不创建新的线程;当链表数小于当前线程数,并且当前线程数大于最小值时,管理线程关闭闲置的线程,使线程数等于最小值。
全文摘要
高级多线程管理的应用系统,涉及一种计算机网络高级多线程管理的应用系统,特别是涉及一种针对规模较大,运行情况较为复杂的计算机网络的安全性和可靠性管理系统。包括有高级线程管理器和自适应线程池,所述高级线程管理器设定有线程的名称、线程的参数、线程的序号、线程状态记数及向系统申请内存,创建被管理线程,并向系统注册一个定时器;所述自适应线程池由高级线程管理器创建,线程个数为指定范围的最小值,针对线程池中的每个线程,管理线程都设置超时时间。本发明可应用于网络类计算机系统。
文档编号H04L12/24GK1987792SQ200610134908
公开日2007年6月27日 申请日期2006年12月20日 优先权日2006年12月20日
发明者金魁 申请人:金魁
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1