业务配置方法及系统与流程

专利查询2023-7-5  128



1.本发明涉及业务处理开发领域,尤指一种业务配置方法及系统。


背景技术:

2.在当前技术环境中,业务功能与服务运行控制混合在一起,每启动一个服务仅能完成一个业务功能,每新产生一个业务需求,都需要开发一个服务才能实现。为此,当工作人员需要处理某一业务时,则需单独开发一个服务,如该业务中部分参数需修改时,则无法引用前一个服务只能重新开发新的服务,造成在开发过程中代码复用能力较差,软件运行中可配置性极差,功能开发周期时间长的问题;为此,业内亟需一种高效的业务层级架构能够有效实现代码复用,予以降低工作人员的工作量,提高开发作业的工作效率。


技术实现要素:

3.本发明目的在于提供一种业务配置方法及系统,予以有效提高代码复用率,提高开发效率。
4.为达上述目的,本发明所提供的一种业务配置方法,所述方法包含:接收待执行业务,创建共享内存空间并根据所述待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入所述共享内存空间;将待执行业务中各服务分发至主控模块,由各主控模块根据所述共享内存空间内的进程注册表和接收到的服务的任务类型将一个或多个功能模块配置于任务列表;根据所述任务列表向对应功能模块发起调用指令,由功能模块根据所述调用指令开启一个或多个处理子进程执行对应的任务处理,并根据所述主控模块的标识信息将各子进程的进程状态按预设周期更新注册至进程注册表;按预设周期于进程注册表中更新运行中的主控模块的活性检查时间和进程状态,并根据所述进程注册表内的进程状态开启和关闭对应进程。
5.在上述业务配置方法中,优选的,所述身份信息包含服务编号、服务文件名、启动最小进程数、启动最大进程数、启动线程数、空闲休眠时间、日志文件名、日志级别和任务列表。
6.在上述业务配置方法中,优选的,各子进程的进程状态包含进程号、主控模块的标识信息、进程名称、进程类型、进程状态、进程状态更新时间和活性检查时间。
7.在上述业务配置方法中,优选的,根据所述进程注册表内的进程状态开启和关闭对应进程包含:根据所述进程状态中的进程类型调取预存的管理策略,根据所述管理策略开启和关闭对应进程。
8.在上述业务配置方法中,优选的,根据所述管理策略开启和关闭对应进程包含:当所述进程类型为初始进程或负载进程时,将活性检查时间与当前时间的差值与预设休眠阈值比较,当比较结果大于第一阈值时关闭对应初始进程或负载进程;当所述进程类型为子进程时,检索所述进程注册表中所述子进程对应的标识信息,根据检索结果关闭所述子进程;当所述进程类型为负载进程,且进程状态为空闲时,将进程状态更新时间与当前时间的
差值与预设休眠阈值比较,当比较结果大于第二阈值时退出对应负载进程;当同一进程名称的总进程数量小于启动最小进程数时,根据进程名称开启一个同名称的初始进程;当同一进程名称的所有进程均为忙碌状态,所有的进程的进程状态更新时间与当前时间的差值大于第二阈值时,且总进程数量小于启动最大进程数时,根据进程名称开启一个同名称的负载进程。
9.在上述业务配置方法中,优选的,所述任务类型包含:报文接收服务、报文发送服务、实时任务处理服务、定时任务处理服务和共享内存数据处理服务。
10.本发明还提供一种业务配置系统,所述系统包含节点管理模块、多个主控模块和多个功能模块;所述节点管理模块用于创建共享内存空间,根据待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入所述共享内存空间,并将待执行业务中各服务分发至所述主控模块;以及,根据所述进程注册表内的进程状态开启和关闭对应进程;所述主控模块用于根据所述共享内存空间内的进程注册表,通过接收到服务的任务类型将一个或多个功能模块配置于任务列表,根据所述任务列表向对应功能模块发起调用指令;以及,按预设周期于进程注册表中更新当前主控模块的活性检查时间和进程状态;所述功能模块用于根据接收到的调用指令开启一个或多个处理子进程执行对应的任务处理,并根据所述主控模块的标识信息将各子进程的进程状态注册至进程注册表。
11.在上述业务配置系统中,优选的,所述节点管理模块包含管理单元,所述管理单元用于根据所述进程状态中的进程类型调取预存的管理策略,根据所述管理策略开启和关闭所述主控模块或所述功能模块。
12.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
13.本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
14.本发明的有益技术效果在于:通过本发明所提供的业务配置方法及系统可针对不同的服务完成多项业务功能,当出现新的业务需求时仅需加入对应的功能模块完成配置即可,无需重新开发服务,以此有效增加开发过程中代码复用能力,提高了软件运行中可配置性能,降低了功能开发周期的耗时,节约了人力。
附图说明
15.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,并不构成对本发明的限定。在附图中:
16.图1为本发明一实施例所提供的业务配置方法的流程示意图;
17.图2为本发明一实施例所提供的进程管理的示意图;
18.图3为本发明一实施例所提供的业务配置系统的结构示意图;
19.图4为本发明一实施例所提供的节点管理模块的结构示意图;
20.图5为本发明一实施例所提供的电子设备的结构示意图。
具体实施方式
21.以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用
技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
22.另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
23.请参考图1所示,本发明所提供的一种业务配置方法,所述方法包含:
24.s101接收待执行业务,创建共享内存空间并根据所述待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入所述共享内存空间;
25.s102将待执行业务中各服务分发至主控模块,由各主控模块根据所述共享内存空间内的进程注册表和接收到的服务的任务类型将一个或多个功能模块配置于任务列表;
26.s103根据所述任务列表向对应功能模块发起调用指令,由功能模块根据所述调用指令开启一个或多个处理子进程执行对应的任务处理,并根据所述主控模块的标识信息将各子进程的进程状态按预设周期更新注册至进程注册表;
27.s104按预设周期于进程注册表中更新运行中的主控模块的活性检查时间和进程状态,并根据所述进程注册表内的进程状态开启和关闭对应进程。
28.其中,所述身份信息包含服务编号、服务文件名、启动最小进程数、启动最大进程数、启动线程数、空闲休眠时间、日志文件名、日志级别和任务列表。各子进程的进程状态包含进程号、主控模块的标识信息、进程名称、进程类型、进程状态、进程状态更新时间和活性检查时间。在具体实施过程中,上述实施例主要采用面向服务的架构设计理念,将服务架构分为四层,即节点管理器、主控服务、功能模块、功能模块子进程。其中,节点管理器负责主控服务的创建及调度;主控服务负责功能模块的调度及事务处理机制,但不处理具体功能;各功能模块负责具体功能的实现,无需关心事务处理;功能模块子进程由功能模块调起,实现具体功能;节点管理器与主控服务及其各功能模块的关系通过配置实现。
29.请参考图2所示,在本发明一实施例中,根据所述进程注册表内的进程状态开启和关闭对应进程包含:
30.s201根据所述进程状态中的进程类型调取预存的管理策略;
31.s202根据所述管理策略开启和关闭对应进程。具体的,根据所述管理策略开启和关闭对应进程可包含:当所述进程类型为初始进程或负载进程时,将活性检查时间与当前时间的差值与预设休眠阈值比较,当比较结果大于第一阈值时关闭对应初始进程或负载进程;当所述进程类型为子进程时,检索所述进程注册表中所述子进程对应的标识信息,根据检索结果关闭所述子进程;当所述进程类型为负载进程,且进程状态为空闲时,将进程状态更新时间与当前时间的差值与预设休眠阈值比较,当比较结果大于第二阈值时退出对应负载进程;当同一进程名称的总进程数量小于启动最小进程数时,根据进程名称开启一个同名称的初始进程;当同一进程名称的所有进程均为忙碌状态,所有的进程的进程状态更新时间与当前时间的差值大于第二阈值时,且总进程数量小于启动最大进程数时,根据进程名称开启一个同名称的负载进程。
32.在实际工作中,节点管理器启动时,创建共享内存空间,空间内包含一块区域用于存储被启动的子线程的状态信息即进程注册表,具体包含进程号,父进程号,进程名称,进
程类型(初始进程、负载进程、功能模块子进程),进程状态(忙碌、空闲),进程状态更新时间,最近活性检查时间。其后,节点管理器启动的主控进程会在进程注册表中进行基本信息的注册,每个主控进程自己启动后,会连接共享内存,检查自身的信息是否已经进行过注册,未注册的进程会自动的退出,已注册的主控进程需要在运行过程中,定期的更新自身的活性检查时间和进程状态,功能模块启动的子进程由功能模块将其注册到进程注册表中;节点管理器对进程注册表的进程按如下方式进行管理:
33.1.对于一个类型为初始进程或负载进程的进程,如果其最近活性检查时间距离当前时间超过了空闲休眠时间的三倍,则将其强制退出。
34.2.对于一个类型为功能模块子进程的进程,如果其父进程在进程注册表中不存在,则将其强制退出。
35.3.对于一个类型为负载进程的进程,如果其进程状态更新时间距离当前时间超过了空闲休眠时间的两倍,则将其正常退出。
36.4.当同一个进程名称的总进程数量小于启动最小进程数时,额外再启动一个该进程名称的初始进程。
37.5.当同一个进程名称的所有进程状态都为忙碌,并且所有的进程的进程状态更新时间距离当前时间都超过了空闲休眠时间的两倍,并且总进程数量小于启动最大进程数时,额外再启动一个该进程的负载进程。
38.在本发明一实施例中,所述任务类型包含:报文接收服务、报文发送服务、实时任务处理服务、定时任务处理服务和共享内存数据处理服务。具体的,在实际工作中,主控服务包含以下几种类型的服务,将不同的任务类型所对应的功能模块(可能为代码实现也可能为脚本实现)配置在对应类型的服务的任务列表中,此部分配置信息可以远程修改,从而实现功能的可配置性:
39.1、报文接收服务,用于处理发来的报文,将可处理报文类型列表配置在报文接收服务的任务列表中,可以控制报文服务可处理的报文类型。报文接收服务在处理报文时会变为忙碌态,发现不存在待处理报文时为空闲态。
40.2、报文发送服务,用于发出报文。
41.3、实时任务处理服务,用于处理实时类的任务,实时任务的特点是数据到达时间不规律,对响应时间要求高,因此使用多线程的方式,每个线程单独处理一个任务,通过互斥抢夺的方式保证任务不会被重复执行,如果任务列表中仍存在未被抢夺的任务,则进程状态为忙碌,否则为空闲。
42.4、定时任务处理服务,用于处理定时类的任务,定时任务的特点是数据到达时间规律,间隔稳定,因此每个定时服务单独执行一个定时任务,可根据定时任务的具体特点,规划自身的定时启动间隔和执行时长,如果任务列表中仍存在没有被获取的定时任务,那么进程状态未忙碌,否则为空闲。
43.5、共享内存数据处理服务,用于处理共享内存交互的任务,共享内存是由其他系统主动向本系统创建的共享内存中输入,存在不可预料性,因此需要使用轮询的方式,读到数据时进入忙碌态,未读到则进入空闲态。
44.其后,功能模块被主控调起后,需要产生子进程完成业务功能,此时在共享内存中注册派生的子进程信息,标记其父进程为调起本任务模块的主控进程的标识信息,当主控
进程发生异常时,节点管理器才可根据预定规则对派生的子进程进行资源的回收。
45.请参考图3所示,本发明还提供一种业务配置系统,所述系统包含节点管理模块、多个主控模块和多个功能模块;所述节点管理模块用于创建共享内存空间,根据待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入所述共享内存空间,并将待执行业务中各服务分发至所述主控模块;以及,根据所述进程注册表内的进程状态开启和关闭对应进程;所述主控模块用于根据所述共享内存空间内的进程注册表,通过接收到服务的任务类型将一个或多个功能模块配置于任务列表,根据所述任务列表向对应功能模块发起调用指令;以及,按预设周期于进程注册表中更新当前主控模块的活性检查时间和进程状态;所述功能模块用于根据接收到的调用指令开启一个或多个处理子进程执行对应的任务处理,并根据所述主控模块的标识信息将各子进程的进程状态按预设周期更新注册至进程注册表。进一步的,请参考图4所示,所述节点管理模块包含管理单元,所述管理单元用于根据所述进程状态中的进程类型调取预存的管理策略,根据所述管理策略开启和关闭所述主控模块或所述功能模块。具体实现方式已在前述实施例中详细说明,在此就不再一一详述。
46.本发明的有益技术效果在于:通过本发明所提供的业务配置方法及系统可针对不同的服务完成多项业务功能,当出现新的业务需求时仅需加入对应的功能模块完成配置即可,无需重新开发服务,以此有效增加开发过程中代码复用能力,提高了软件运行中可配置性能,降低了功能开发周期的耗时,节约了人力。
47.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
48.本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
49.如图5所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理单元130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图5中所示的所有部件;此外,电子设备600还可以包括图5中没有示出的部件,可以参考现有技术。
50.如图5所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部件的操作。
51.其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
52.输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为lcd显示器,但并不限于此。
53.该存储器140可以是固态存储器,例如,只读存储器(rom)、随机存取存储器(ram)、sim卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为eprom等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部
142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
54.存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
55.通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
56.基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
57.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
58.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
59.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
60.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
61.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种业务配置方法,其特征在于,所述方法包含:接收待执行业务,创建共享内存空间并根据所述待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入所述共享内存空间;将待执行业务中各服务分发至主控模块,由各主控模块根据所述共享内存空间内的进程注册表和接收到的服务的任务类型将一个或多个功能模块配置于任务列表;根据所述任务列表向对应功能模块发起调用指令,由功能模块根据所述调用指令开启一个或多个处理子进程执行对应的任务处理,并根据所述主控模块的标识信息将各子进程的进程状态按预设周期更新注册至进程注册表;按预设周期于进程注册表中更新运行中的主控模块的活性检查时间和进程状态,并根据所述进程注册表内的进程状态开启和关闭对应进程。2.根据权利要求1所述的业务配置方法,其特征在于,所述身份信息包含服务编号、服务文件名、启动最小进程数、启动最大进程数、启动线程数、空闲休眠时间、日志文件名、日志级别和任务列表。3.根据权利要求1所述的业务配置方法,其特征在于,各子进程的进程状态包含进程号、主控模块的标识信息、进程名称、进程类型、进程状态、进程状态更新时间和活性检查时间。4.根据权利要求3所述的业务配置方法,其特征在于,根据所述进程注册表内的进程状态开启和关闭对应进程包含:根据所述进程状态中的进程类型调取预存的管理策略,根据所述管理策略开启和关闭对应进程。5.根据权利要求4所述的业务配置方法,其特征在于,根据所述管理策略开启和关闭对应进程包含:当所述进程类型为初始进程或负载进程时,将活性检查时间与当前时间的差值与预设休眠阈值比较,当比较结果大于第一阈值时关闭对应初始进程或负载进程;当所述进程类型为子进程时,检索所述进程注册表中所述子进程对应的标识信息,根据检索结果关闭所述子进程;当所述进程类型为负载进程,且进程状态为空闲时,将进程状态更新时间与当前时间的差值与预设休眠阈值比较,当比较结果大于第二阈值时退出对应负载进程;当同一进程名称的总进程数量小于启动最小进程数时,根据进程名称开启一个同名称的初始进程;当同一进程名称的所有进程均为忙碌状态,所有的进程的进程状态更新时间与当前时间的差值大于第二阈值时,且总进程数量小于启动最大进程数时,根据进程名称开启一个同名称的负载进程。6.根据权利要求1所述的业务配置方法,其特征在于,所述任务类型包含:报文接收服务、报文发送服务、实时任务处理服务、定时任务处理服务和共享内存数据处理服务。7.一种业务配置系统,其特征在于,所述系统包含节点管理模块、多个主控模块和多个功能模块;所述节点管理模块用于创建共享内存空间,根据待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入所述共享内存空间,并将待执行业务中各服务分发至所述主控模块;以及,根据所述进程注册表内的进程状态开启和关闭对应进程;
所述主控模块用于根据所述共享内存空间内的进程注册表,通过接收到服务的任务类型将一个或多个功能模块配置于任务列表,根据所述任务列表向对应功能模块发起调用指令;以及,按预设周期于进程注册表中更新当前主控模块的活性检查时间和进程状态;所述功能模块用于根据接收到的调用指令开启一个或多个处理子进程执行对应的任务处理,并根据所述主控模块的标识信息将各子进程的进程状态注册至进程注册表。8.根据权利要求7所述的业务配置系统,其特征在于,所述节点管理模块包含管理单元,所述管理单元用于根据所述进程状态中的进程类型调取预存的管理策略,根据所述管理策略开启和关闭所述主控模块或所述功能模块。9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一所述方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有由计算机执行权利要求1至6任一所述方法的计算机程序。

技术总结
一种业务配置方法及系统,所述方法包含:接收待执行业务,创建共享内存空间并根据待执行业务中的服务数量将对应数量的主控模块的身份信息写入进程注册表后存入共享内存空间;将待执行业务中各服务分发至主控模块,由各主控模块根据共享内存空间内的进程注册表和接收到的服务的任务类型将一个或多个功能模块配置于任务列表;根据任务列表向对应功能模块发起调用指令,由功能模块根据调用指令开启一个或多个处理子进程执行对应的任务处理,并根据主控模块的标识信息将各子进程的进程状态注册至进程注册表;按预设周期于进程注册表中更新运行中的主控模块的活性检查时间和进程状态,并根据进程注册表内的进程状态开启和关闭对应进程。闭对应进程。闭对应进程。


技术研发人员:徐昌柏 颜冬 李勤 潘瑞温
受保护的技术使用者:银清科技有限公司
技术研发日:2021.11.30
技术公布日:2022/3/8

最新回复(0)