一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架技术方案

技术编号:20448411 阅读:40 留言:0更新日期:2019-02-27 02:46
本发明专利技术公开了一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架,该发明专利技术中单导系统利用多子进程处理多任务并发以及子进程异常信号处理的方式,结合持久化保存子进程号和任务信息等的方法,使父进程能做到对异常任务子进程信号的捕获,并根据持久化保存的信息,分配一个新的子进程接管重做该异常任务,实现单导系统的多任务并发的高效性、高容错和高稳定性。

A High Fault Tolerance and High Stability Technical Framework for Multi-subprocesses and Process Signal Processing Based on Single-channel System

The invention discloses a technical framework of high fault tolerance and high stability based on multi-subprocesses of single-channel system and process signal processing. In the invention, single-channel system utilizes multi-subprocesses to handle multi-task concurrency and abnormal signal processing of sub-processes, and combines persistent preservation of sub-process number and task information to enable parent processes to capture abnormal task sub-process signals. According to the persistent information, a new sub-process is assigned to take over and redo the abnormal task to realize the high efficiency, high fault tolerance and high stability of multi-task concurrency in single-channel system.

【技术实现步骤摘要】
一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架
本专利技术涉及一种互联网通信
,特别涉及一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架。
技术介绍
2007年3月份,国家保密局和国务院信息化工作办公室联合发布了《电子政务保密管理指南》。《指南》中规定:按照信息保密的技术要求,涉密网络不能与互联网直接连通;涉密网络与非涉密网络连接时,若非涉密网络与互联网物理隔离,则采用双向网闸隔离涉密网络与非涉密网络连接;若非涉密网络与互联网是逻辑隔离的,则采用安全隔离与信息安全隔离与信息单向导入系统实现涉密网络与非涉密网络连接,保证涉密数据不从高密级网络流向低密级网络。一般来说,单导系统传输的涉密数据信息包括文件、数据库数据、电子邮件数据等。这就决定了单导系统是一种处理多任务并发的具有一定复杂性的系统,所以使用线性处理的单进程的普通技术框架处理多任务略显低效。现有的常用技术多数基于轻量级的多线程实现,但是由于单导系统的数据任务多而且任务周期循环和执行时间长,一旦有一个任务线程出现异常,则基于线程的整个系统也会连带出现异常,所以多线程的方案并不适合单导系统。
技术实现思路
为克服上述现有技术的不足,本方案综合考虑各种实现方式的优劣,采用多个子进程对应多任务,结合子进程异常信号处理,对异常任务接管重做的方式,实现了单导系统多任务并发的高效性和高容错高稳定性。本专利技术使用多子进程处理多任务以及子进程异常信号捕获处理,结合持久化保存子进程号和任务信息等的方法,实现单导系统的多任务并发的高效性、高容错和高稳定性。由于单导系统的数据任务多而且任务有周期循环和任务执行时间长,所以采用子进程独立执行任务是最佳的选择;并且由于进程的独立性,某一个任务进程长时间执行过程中如果出现异常也不会影响别的任务进程,只要父进程对子进程异常信号捕获处理,就可以做到异常任务被无缝高效的接管重做,实现高容错和高稳定性。本方案实施流程如下:1、单导系统进程申请初始化用于通信的匿名管道,然后获取所有需要做的任务信息。2、给每个任务分配一个子进程处理。2、子进程方面,接到父进程分配的任务信息,加载任务所需的动态库,做任务。3、父进程方面,把子进程号和任务信息持久化保存,并对子进程异常信号注册处理。4、如果子进程出现异常,父进程立即捕获异常信号,并读取持久化保存的子进程号和对应的任务信息,获得任务信息后,然后在保存的信息里面把该异常信息删掉,跳转到步骤2。5、子进程做完任务时,通过管道上报任务信息给父进程。6、父进程while循环读取管道信息,如果收到子进程上报的信息,则进行处理。本专利技术技术方案带来的有益效果:本专利技术中使用多子进程处理多任务以及子进程异常信号处理的方式,能够使单导系统并发处理多任务,而且由于进程的独立性,一旦某个任务进程出现异常也不会影响到整个系统的运行,还可以通过父进程捕获任务子进程的异常信号,重新分配子进程来做异常任务接管和重做等的处理,使单导系统具有高效率、高容错、高稳定性的特点。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1是本专利技术提出的实施流程图;具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。该专利技术实施流程如下:1、单导系统进程申请初始化用于通信的匿名管道,然后获取所有需要做的任务信息;2、给每个任务分配一个子进程处理;2、子进程方面,接到父进程分配的任务信息,加载任务所需的动态库,做任务;3、父进程方面,把子进程号和任务信息持久化保存,并对子进程异常信号注册处理;4、如果子进程出现异常,父进程立即捕获异常信号,并读取持久化保存的子进程号和对应的任务信息,获得任务信息后,然后在保存的信息里面把该异常信息删掉,跳转到步骤2;5、子进程做完任务时,通过管道上报任务信息给父进程;6、父进程while循环读取管道信息,如果收到子进程上报的信息,则进行处理。代码举例说明:1.单导系统在获取了所有任务信息后,把任务信息组成任务队列g_OuterTaskInfoList,该变量类型是std::list<OuterTaskInfo>,其中OuterTaskInfo是任务信息结构体,可以自定义。然后对每个任务分配一个子进程处理,父进程为子进程信号注册事件处理函数,部分的代码如下:2.本专利技术的技术方案主要在子进程异常处理,其中处理函数sig_chld_handler的部分代码如下:3.从上面的代码流程可以了解到本专利技术方案的多子进程处理多任务并发,结合了子进程异常信号处理,确实能做到无缝接管和重做异常任务,实现了单导系统的高效性、高容错性和高稳定性。以上对本专利技术实施例所提供的一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架进行了详细介绍,本文中应用了具体个例对本专利技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本专利技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本专利技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本专利技术的限制。本文档来自技高网...

【技术保护点】
1.一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架,该专利技术采用多个子进程对应多任务,结合子进程异常信号处理,对异常任务接管重做的方式,实现单导系统多任务并发的高效性和高容错高稳定性。

【技术特征摘要】
1.一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架,该发明采用多个子进程对应多任务,结合子进程异常信号处理,对异常任务接管重做的方式,实现单导系统多任务并发的高效性和高容错高稳定性。2.根据权利要求1所述的一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架,其特征在于:使用多子进程处理多任务以及子进程异常信号捕获处理,结合持久化保存子进程号和任务信息。3.根据权利要求1所述的一种基于单导系统的多子进程以及进程信号处理的高容错高稳定的技术框架,其特征在于:由于单导系统的数据任务多而且任务有周期循环和任务执行时间长,故采用子进程独立执行任务的方式;某一个任务进程长时间执行过程中如果出现异常也不会影响别的任务进程,只要父进程对子进程异常信号捕获处理,即可做到...

【专利技术属性】
技术研发人员:杨育斌曹土光黄家俊柯宗贵
申请(专利权)人:成都蓝盾网信科技有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1