CN118093048A - 一种多模块启动管理方法、装置、设备及介质 - Google Patents
一种多模块启动管理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN118093048A CN118093048A CN202410212198.3A CN202410212198A CN118093048A CN 118093048 A CN118093048 A CN 118093048A CN 202410212198 A CN202410212198 A CN 202410212198A CN 118093048 A CN118093048 A CN 118093048A
- Authority
- CN
- China
- Prior art keywords
- module
- starting
- management
- naming
- dynamic library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 172
- 238000012545 processing Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims description 30
- 238000012163 sequencing technique Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 11
- 230000001419 dependent effect Effects 0.000 claims description 9
- 238000004140 cleaning Methods 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种多模块启动管理方法、装置、设备及介质。多模块启动管理方法,包括:对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口;基于目标目录以及各规范命名动态库,确定待启动队列;根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。本发明实施例的技术方案能够降低多模块启动管理的人工成本,并提升多模块启动的管理效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种多模块启动管理方法、装置、设备及介质。
背景技术
目前嵌入式软件应用,总体上采用了类似微服务的多模块运行架构。各模块要求功能独立,并且依赖的相关配置文件、进程启动以及运行过程均由各模块自行处理。然而在各模块自行开发的过程中,其进程启动、运行以及退出之后的回收清理动作等,由不同的团队进行开发,因此造成各模块开发的功能正确性、完整性以及技术方案各不相同。
现有多模块启动,主要依赖于配置文件实现开启时序的管理。在业务发生变动时,需要进行启动配置以及时序依赖配置,因此每次业务变动时,都需要技术人员手动调整配置文件。
发明内容
本发明提供了一种多模块启动管理方法、装置、设备及介质,以解决当前通过人工修改配置文件实现多模块按序启动存在的人工成本高以及效率低的问题。
根据本发明的一方面,提供了一种多模块启动管理方法,包括:
对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口;
基于目标目录以及各规范命名动态库,确定待启动队列;
根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。
根据本发明的另一方面,提供了一种多模块启动管理装置,包括:
命名处理与接口获取模块,用于对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口;
待启动队列确定模块,用于基于目标目录以及各规范命名动态库,确定待启动队列;
启动时序管理模块,用于根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的多模块启动管理方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的多模块启动管理方法。
本发明实施例的技术方案,通过对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口,从而基于目标目录以及各规范命名动态库,确定待启动队列,进而根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。在本方案中,对系统模块进行了模块命名规范处理,可以使得规范命名动态库便于精准查询,因此基于目标目录以及各规范命名动态库,可以自动快速的确定出待启动队列,在无需编写多模块启动管理的配置文件的前提下,基于模块启动参数以及待启动队列,实现对启动管理模块的启动时序管理,而在模块启动管理业务发生变化时,基于本方案也仅是需要调整目标目录,可以大大提升多模块启动的管理效率,无论是在代码复用角度还是功能正确使用角度效果更优,解决了当前通过人工修改配置文件实现多模块按序启动存在的人工成本高以及效率低的问题,能够降低多模块启动管理的人工成本,并提升多模块启动的管理效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种多模块启动管理方法的流程图;
图2为本发明实施例二提供的一种多模块启动管理方法的流程图;
图3为本发明实施例二提供的一种服务管理软件的功能用例图;
图4为本发明实施例三提供的一种多模块启动管理装置的结构示意图;
图5示出了可以用来实施本发明的实施例的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“目标”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供的一种多模块启动管理方法的流程图,本实施例可适用于低人工成本进行多模块启动管理的情况,该方法可以由多模块启动管理装置来执行,该多模块启动管理装置可以采用硬件和/或软件的形式实现,该多模块启动管理装置可配置于电子设备中。如图1所示,该方法包括:
步骤110、对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口。
其中,系统模块可以是业务系统中的软件模块。模块命名规范处理可以是按照预设的规范命名规则对系统模块进行命名的操作。规范命名动态库可以是属于动态库类型且完成模块命名规范处理的系统模块。关联自定义接口可以是基于规范命名动态库的导出函数抽象定义出的接口。可选的,关联自定义接口可以包括但不限于加载、开始、停止以及退出清理等接口。
在本发明实施例中,可以按需对软件系统中的系统模块进行划分,并将划分于各组的动态库类型的系统模块进行模块命名规范处理,得到各规范命名动态库,进一步获取由各规范命名动态库的导出函数定义的关联自定义接口。
可选的,可以基于系统架构层次和/或功能区域等对系统模块进行划分,从而对属于同一系统架构层次的动态库类型的系统模块按照相同的规范命名规则进行命名,或者对相同功能区域的动态库类型的系统模块按照统一的规范命名规则进行命名。规范命名规则可以理解为在划分于同一组下的系统模块的命名中加入相同的字段、符号等,实现与不用组别的系统模块的区分。
步骤120、基于目标目录以及各规范命名动态库,确定待启动队列。
其中,目标目录可以是符合多模块启动管理业务需要的打包软件目标,用于确定进行启动管理的系统模块。待启动队列可以是由目标目录从全部规范命名动态库中筛选出的规范命名动态库,所构成的动态库队列。
在本发明实施例中,可以获取基于多模块启动管理业务需要确定的目标目录,并按照目标目录扫描各规范命名动态库,得到与目标目录匹配的规范命名动态库以构成待启动队列。
步骤130、根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。
其中,模块启动参数可以是指示系统模块启动的参数。可选的,模块启动参数可以包括但不限于系统模块名称、依赖模块以及启动延时等参数。启动管理模块是与待启动队列中规范命名动态库对应的系统模块。启动时序管理可以是对各启动管理模块进行启动时序的管控操作。
在本发明实施例中,对待启动队列,通过调用关联自定义接口中加载接口的方法,获取模块启动参数,进而确定待启动队列中规范命名动态库对应的系统模块即各启动管理模块,并按照模块启动参数,对各启动管理模块进行启动时序管理。
本发明实施例的技术方案,通过对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口,从而基于目标目录以及各规范命名动态库,确定待启动队列,进而根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。在本方案中,对系统模块进行了模块命名规范处理,可以使得规范命名动态库便于精准查询,因此基于目标目录以及各规范命名动态库,可以自动快速的确定出待启动队列,在无需编写多模块启动管理的配置文件的前提下,基于模块启动参数以及待启动队列,实现对启动管理模块的启动时序管理,而在模块启动管理业务发生变化时,基于本方案也仅是需要调整目标目录,可以大大提升多模块启动的管理效率,无论是在代码复用角度还是功能正确使用角度效果更优,解决了当前通过人工修改配置文件实现多模块按序启动存在的人工成本高以及效率低的问题,能够降低多模块启动管理的人工成本,并提升多模块启动的管理效率。
实施例二
图2为本发明实施例二提供的一种多模块启动管理方法的流程图,本实施例以上述实施例为基础进行具体化,给出了对各系统模块进行模块命名规范处理,得到各规范命名动态库的具体的可选的实施方式。如图2所示,该方法包括:
步骤210、确定软件框架层次下各架构层级的模块规范前缀。
其中,软件框架层次可以用于描述由软件开发人员规定的软件架构层。模块规范前缀可以是预先设置的模块名称中的前缀。
在本发明实施例中,可以先确定软件系统的软件框架层次,进而获取软件框架层次下各架构层级所对应的模块规范前缀。
步骤220、根据各架构层级的模块规范前缀以及各系统模块对应的目标架构层级,对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口。
其中,目标架构层级可以是系统模块所属的架构层级。
在本发明实施例中,可以从各架构层级的模块规范前缀中,确定出各系统模块对应的目标架构层级的模块规范前缀,进而根据各系统模块匹配的模块规范前缀,对系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口。
示例性的,基础平台采用的模块规范前缀为rmbasic,则对应的规范命名动态库的命名可以为rmbasic-storage、rmbasic-network,librmbasic-aiservice.so。公交行业采用的模块规范前缀为rmbus,则规范命名动态库的命名可以为rmbus-station等。
步骤230、基于目标目录以及各规范命名动态库,确定待启动队列。
在本发明的一个可选实施例中,基于目标目录以及各规范命名动态库,确定待启动队列,可以包括:根据目标目录以及正则匹配方式,对规范命名动态库进行识别,得到各待入队动态库;将各待入队动态库依次加入数据队列,得到待启动队列。
其中,待入队动态库可以是加入待启动队列的规范命名动态库。
在本发明实施例中,从全部规范命名动态库中,按照目标目录扫描,以及正则匹配方式进行识别,得到与目标目录匹配的各规范命名动态库,并将识别出的规范命名动态库作为待入队动态库,并将各待入队动态库按照识别顺序依次加入数据队列,得到待启动队列。
步骤240、根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。
在本发明的一个可选实施例中,根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理,可以包括:根据模块启动参数,对各启动管理模块进行排序,得到模块启动排序数据;根据模块启动排序数据以及模块启动参数中的启动延时参数,对各启动管理模块进行启动时序管理。
其中,模块启动排序数据可以是描述启动管理模块启动顺序的数据。启动延时参数可以用于指示启动管理模块进行延时启动。
在本发明实施例中,可以根据模块启动参数,对各启动管理模块按照启动顺序进行排序,得到模块启动排序数据,并按照模块启动参数中的启动延时参数,对利用模块启动排序数据完成排序的各启动管理模块进行启动时序管理。
在本发明的一个可选实施例中,根据模块启动参数,对各启动管理模块进行排序,得到模块启动排序数据,可以包括:根据模块启动参数以及各启动管理模块,生成配置依赖多叉树;层序遍历配置依赖多叉树,得到模块启动排序数据。
其中,配置依赖多叉树可以是描述启动管理模块之间启动顺序的多叉树。层序遍历可以用于进行广度优先搜索。
在本发明实施例中,可以将各启动管理模块创建为节点,根据模型启动参数确定各启动管理模块的启动依存关系,从而按照启动依存关系对代表各启动管理模块的节点串接,得到配置依赖多叉树,进而对配置依赖多叉树进行层级遍历,得到模块启动排序数据。
在本发明的一个可选实施例中,在对各启动管理模块进行启动时序管理之后,还可以包括:将各启动管理模块加入监听管理列表;根据监听管理列表,获取各启动管理模块的模块运行状态,并根据模块运行状态,调用模块退出清理接口。
其中,监听管理列表可是守护监听的启动管理模块的列表。模块退出清理接口可以是由规范命名动态库的导出函数定义的进行退出清理的接口。
在本发明实施例中,可以将各启动管理模块加入监听管理列表,并按照监听管理列表,检测各启动管理模块的模块运行状态,并在模块运行状态为运行结束时,调用模块停止接口以及模块退出清理接口,以退出对运行结束的启动管理模块的管理。
在本发明的一个可选实施例中,多模块启动管理方法,还可以包括:在检测到新增系统模块和/或删减系统模块时,确定待调整规范命名动态库;根据新增系统模块和/或删减系统模块,更新目标目录;根据待调整规范命名动态库、各规范命名动态库以及更新后的目标目录,更新待启动队列。
其中,新增系统模块可以是根据业务需要新增的系统模块。删减系统模块可以是基于业务需要删减的已有系统模块。待调整规范命名动态库可以是基于新增系统模块和/或删减系统模块确定的规范命名动态库。
在本发明实施例中,在检测到新增系统模块和/或删减系统模块时,可以将新增系统模块和/或删减系统模块进行模块命名规范处理,得到待调整规范命名动态库,并将新增系统模块和/或删减系统模块对应的打包软件加入目标目录,得到更新后的目标目录,进而通过待调整规范命名动态库,对已有的规范命名动态库进行新增和/或删减,从而通过更新后的目标目录扫描已完成新增和/或删减的规范命名动态库,得到与更新后的目标目录匹配的待启动队列。
可选的,在更新目标目录之前还可以:根据待调整规范命名动态库的导出函数定义与新增系统模块匹配的关联自定义接口,和/或删除与删减系统模块匹配的关联自定义接口,实现对关联自定义接口的更新,从而返回执行根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理的操作。
在一个具体的例子中,多模块启动管理方法的实现逻辑如下:a、将软件系统内各个系统模块进行模块命名规范处理,例如动态库类型的系统模块,可命名为librmbasic-xxx.so。b、基于规范命名动态库的导出函数定义:抽象定义加载(load)、开始(start)、停止(stop)以及退出清理(cleanup)一系列接口,要求各规范命名动态库按要求进行代码实现。c、开机启动多模块启动管理,按照指定的目标目录进行扫描,通过正则匹配识别出各规范命名动态库,将其加入待启动队列。d、将待启动队列中匹配的启动管理模块,通过调用load的方法,获取其模块命名、依赖的模块、启动时延参数等。e、根据加载获取出的模块启动参数,对待启动队列中的启动管理模块进行排序。f、根据模块启动排序数及启动时延参数,启动各个启动管理模块,并将其加入监听管理列表。g、循环运行,定时检测各启动管理模块的模块运行状态。h、运行结束,按序调用各启动管理模块的停止、退出清理接口。i、在新增/删减系统模块时,可按照a和b的要求处理对应的模块,并将打包软件加入对应的扫描目录即可。
其中,系统模块在软件架构中定义为服务模块,因此服务管理软件的功能用例图可参见图3。
当需要新增/删减系统模块时,仅需要对指定的模块进行增加/删除打包动作,无需修改代码。可在软件内对不同的系统模块规定不同的命名要求和目录要求,以此区分软件架构层次。各系统模块开发时,仅需关注自身的启动延时,启动依赖项等,且无需对此进行额外的代码开发,大大节省开发工作量。多模块间的启动时序、依赖项等无需配置文件,软件整包只需要关注是否打包此功能模块即可。
本发明实施例的技术方案,通过确定软件框架层次下各架构层级的模块规范前缀,从而根据各架构层级的模块规范前缀以及各系统模块对应的目标架构层级,对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口,进而基于目标目录以及各规范命名动态库,确定待启动队列,进一步根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。在本方案中,对系统模块进行了模块命名规范处理,可以使得规范命名动态库便于精准查询,因此基于目标目录以及各规范命名动态库,可以自动快速的确定出待启动队列,在无需编写多模块启动管理的配置文件的前提下,基于模块启动参数以及待启动队列,实现对启动管理模块的启动时序管理,而在模块启动管理业务发生变化时,基于本方案也仅是需要调整目标目录,可以大大提升多模块启动的管理效率,无论是在代码复用角度还是功能正确使用角度效果更优,解决了当前通过人工修改配置文件实现多模块按序启动存在的人工成本高以及效率低的问题,能够降低多模块启动管理的人工成本,并提升多模块启动的管理效率。
实施例三
图4为本发明实施例三提供的一种多模块启动管理装置的结构示意图。如图4所示,该装置包括:
命名处理与接口获取模块310,用于对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口;
待启动队列确定模块320,用于基于目标目录以及各规范命名动态库,确定待启动队列;
启动时序管理模块330,用于根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理
本发明实施例的技术方案,通过对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口,从而基于目标目录以及各规范命名动态库,确定待启动队列,进而根据关联自定义接口,得到模块启动参数,并根据模块启动参数以及待启动队列,对各启动管理模块进行启动时序管理。在本方案中,对系统模块进行了模块命名规范处理,可以使得规范命名动态库便于精准查询,因此基于目标目录以及各规范命名动态库,可以自动快速的确定出待启动队列,在无需编写多模块启动管理的配置文件的前提下,基于模块启动参数以及待启动队列,实现对启动管理模块的启动时序管理,而在模块启动管理业务发生变化时,基于本方案也仅是需要调整目标目录,可以大大提升多模块启动的管理效率,无论是在代码复用角度还是功能正确使用角度效果更优,解决了当前通过人工修改配置文件实现多模块按序启动存在的人工成本高以及效率低的问题,能够降低多模块启动管理的人工成本,并提升多模块启动的管理效率。
可选的,命名处理与接口获取模块310包括命名处理单元,命名处理单元,用于确定所述软件框架层次下各架构层级的模块规范前缀;根据各所述架构层级的模块规范前缀以及各所述系统模块对应的目标架构层级,对各所述系统模块进行模块命名规范处理,得到各所述规范命名动态库。
可选的,待启动队列确定模块320,具体用于根据所述目标目录以及正则匹配方式,对所述规范命名动态库进行识别,得到各待入队动态库;将各所述待入队动态库依次加入数据队列,得到所述待启动队列。
可选的,启动时序管理模块330包括模块启动排序数据确定单元以及启动时序管理单元。模块启动排序数据确定单元,用于根据所述模块启动参数,对各所述启动管理模块进行排序,得到模块启动排序数据。启动时序管理单元,用于根据所述模块启动排序数据以及所述模块启动参数中的启动延时参数,对各所述启动管理模块进行启动时序管理。
可选的,模块启动排序数据确定单元,用于根据所述模块启动参数以及所述各启动管理模块,生成配置依赖多叉树;层序遍历所述配置依赖多叉树,得到所述模块启动排序数据。
可选的,多模块启动管理装置还包括接口调用模块,用于将各所述启动管理模块加入监听管理列表;根据所述监听管理列表,获取各所述启动管理模块的模块运行状态,并根据所述模块运行状态,调用模块退出清理接口。
可选的,多模块启动管理装置还包括数据更新模块,用于在检测到新增系统模块和/或删减系统模块时,确定待调整规范命名动态库;根据所述新增系统模块和/或删减系统模块,更新所述目标目录;根据所述待调整规范命名动态库、各所述规范命名动态库以及更新后的目标目录,更新所述待启动队列。
本发明实施例所提供的多模块启动管理装置可执行本发明任意实施例所提供的多模块启动管理方法,具备执行方法相应的功能模块和有益效果。
实施例四
图5示出了可以用来实施本发明的实施例的电子设备的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图5所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如多模块启动管理方法。
在一些实施例中,多模块启动管理方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的多模块启动管理方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行多模块启动管理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种多模块启动管理方法,其特征在于,包括:
对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口;
基于目标目录以及各所述规范命名动态库,确定待启动队列;
根据所述关联自定义接口,得到模块启动参数,并根据所述模块启动参数以及所述待启动队列,对各启动管理模块进行启动时序管理。
2.根据权利要求1所述的方法,其特征在于,所述对各系统模块进行模块命名规范处理,得到各规范命名动态库,包括:
确定软件框架层次下各架构层级的模块规范前缀;
根据各所述架构层级的模块规范前缀以及各所述系统模块对应的目标架构层级,对各所述系统模块进行模块命名规范处理,得到各所述规范命名动态库。
3.根据权利要求1所述的方法,其特征在于,所述基于目标目录以及各所述规范命名动态库,确定待启动队列,包括:
根据所述目标目录以及正则匹配方式,对所述规范命名动态库进行识别,得到各待入队动态库;
将各所述待入队动态库依次加入数据队列,得到所述待启动队列。
4.根据权利要求1所述的方法,其特征在于,所述根据所述模块启动参数以及所述待启动队列,对各启动管理模块进行启动时序管理,包括:
根据所述模块启动参数,对各所述启动管理模块进行排序,得到模块启动排序数据;
根据所述模块启动排序数据以及所述模块启动参数中的启动延时参数,对各所述启动管理模块进行启动时序管理。
5.根据权利要求4所述的方法,其特征在于,所述根据所述模块启动参数,对各所述启动管理模块进行排序,得到模块启动排序数据,包括:
根据所述模块启动参数以及所述各启动管理模块,生成配置依赖多叉树;
层序遍历所述配置依赖多叉树,得到所述模块启动排序数据。
6.根据权利要求1所述的方法,其特征在于,在所述对各启动管理模块进行启动时序管理之后,还包括:
将各所述启动管理模块加入监听管理列表;
根据所述监听管理列表,获取各所述启动管理模块的模块运行状态,并根据所述模块运行状态,调用模块退出清理接口。
7.根据权利要求1所述的方法,其特征在于,所述多模块启动管理方法,还包括:
在检测到新增系统模块和/或删减系统模块时,确定待调整规范命名动态库;
根据所述新增系统模块和/或删减系统模块,更新所述目标目录;
根据所述待调整规范命名动态库、各所述规范命名动态库以及更新后的目标目录,更新所述待启动队列。
8.一种多模块启动管理装置,其特征在于,包括:
命名处理与接口获取模块,用于对各系统模块进行模块命名规范处理,得到各规范命名动态库,并获取关联自定义接口;
待启动队列确定模块,用于基于目标目录以及各所述规范命名动态库,确定待启动队列;
启动时序管理模块,用于根据所述关联自定义接口,得到模块启动参数,并根据所述模块启动参数以及所述待启动队列,对各启动管理模块进行启动时序管理。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的多模块启动管理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的多模块启动管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410212198.3A CN118093048A (zh) | 2024-02-26 | 2024-02-26 | 一种多模块启动管理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410212198.3A CN118093048A (zh) | 2024-02-26 | 2024-02-26 | 一种多模块启动管理方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118093048A true CN118093048A (zh) | 2024-05-28 |
Family
ID=91164337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410212198.3A Pending CN118093048A (zh) | 2024-02-26 | 2024-02-26 | 一种多模块启动管理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118093048A (zh) |
-
2024
- 2024-02-26 CN CN202410212198.3A patent/CN118093048A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116881156A (zh) | 一种自动化测试方法、装置、设备及存储介质 | |
CN113127357A (zh) | 单元测试方法、装置、设备、存储介质及程序产品 | |
CN116545905A (zh) | 一种服务健康检测方法、装置、电子设备及存储介质 | |
CN115454971A (zh) | 数据迁移方法、装置、电子设备及存储介质 | |
CN116126719A (zh) | 接口测试方法、装置、电子设备及存储介质 | |
CN116009847A (zh) | 代码生成方法、装置、电子设备及存储介质 | |
CN115757179A (zh) | 测试环境管理方法、装置、设备及存储介质 | |
CN118093048A (zh) | 一种多模块启动管理方法、装置、设备及介质 | |
CN114691781A (zh) | 一种数据同步方法、系统、装置、设备及介质 | |
CN115563015B (zh) | 一种代码热度统计方法、装置、设备和存储介质 | |
CN112783507B (zh) | 数据引流回放方法、装置、电子设备及可读存储介质 | |
CN116579914B (zh) | 一种图形处理器引擎执行方法、装置、电子设备及存储介质 | |
CN117609150A (zh) | 一种数据迁移方法、装置、设备及介质 | |
CN115757275A (zh) | 一种资产信息管理方法、装置、电子设备及存储介质 | |
CN115827588A (zh) | 一种业务全局流水号的生成方法、装置、设备和存储介质 | |
CN115408195A (zh) | 一种异构平台的批量任务管理方法、设备和存储介质 | |
CN115408115A (zh) | 事务启动时间的处理方法、装置、设备及存储介质 | |
CN117032712A (zh) | 流水线编译构建方法、装置、电子设备和存储介质 | |
CN115983222A (zh) | 基于EasyExcel的文件数据读取方法、装置、设备及介质 | |
CN116755744A (zh) | 一种补丁包生成方法、装置、电子设备及存储介质 | |
CN118113420A (zh) | 一种应用部署方法、装置、电子设备和存储介质 | |
CN117171214A (zh) | 一种数据库的信息比对方法、装置、电子设备及存储介质 | |
CN114416040A (zh) | 一种页面构建方法、装置、设备及存储介质 | |
CN115442252A (zh) | 一种调用链构建方法、装置、电子设备及可读存储介质 | |
CN118012936A (zh) | 一种数据抽取方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |