CN112612833B - 规则包更新方法、装置、设备及存储介质 - Google Patents
规则包更新方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112612833B CN112612833B CN202011502803.9A CN202011502803A CN112612833B CN 112612833 B CN112612833 B CN 112612833B CN 202011502803 A CN202011502803 A CN 202011502803A CN 112612833 B CN112612833 B CN 112612833B
- Authority
- CN
- China
- Prior art keywords
- updated
- knowledge base
- rule
- updating
- rule package
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000012986 modification Methods 0.000 claims description 14
- 230000004048 modification Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 13
- 238000012216 screening Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- 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
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种规则包更新方法、装置、设备及存储介质,涉及数据处理技术领域,该方法包括:在接收到更新指令时,根据更新指令获取待更新规则包;获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库;基于预设接口,根据待更新知识库确定目标知识库;根据目标知识库对待更新规则包进行更新,获得更新后规则包。本发明可先确定待更新规则包中的待更新知识库,再获取内存中生成好的目标知识库,并且支持将生成好的目标知识库设置到新的规则包中,以替换待更新知识库,从而对规则包内的部分知识库进行更新,提高规则包更新效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种规则包更新方法、装置、设备及存储介质。
背景技术
Drools引擎是一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎,业务分析师或审核人员可以利用它轻松查看业务规则,从而检验是否已编码的规则执行了所需的业务规则。然而,Drools引擎在对规则包进行更新时,需要对规则包中的所有知识库进行更新,处理器占用率持续保持较高水平,更新速度慢,从而影响业务处理效率。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种规则包更新方法、装置、设备及存储介质,旨在解决现有技术中对Drools引擎中规则包更新速度慢的技术问题。
为实现上述目的,本发明提供一种规则包更新方法,规则包更新方法包括以下步骤:
在接收到更新指令时,根据更新指令获取待更新规则包;
获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库;
基于预设接口,根据待更新知识库确定目标知识库;
根据目标知识库对待更新规则包进行更新,获得更新后规则包。
可选的,获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库之前,还包括:
获取待更新规则包对应的规则文件修改记录;
根据规则文件修改记录及待更新规则包内置的规则配置文件确定待更新知识库;
根据待更新知识库生成预设更新配置文件,并将预设更新配置文件写入待更新规则包。
可选的,获取待更新规则包对应的规则文件修改记录,包括:
根据待更新规则包确定目标源码仓库;
获取目标源码仓库中的规则文件提交记录;
根据预设时间段对规则文件提交记录进行筛选,获得规则文件修改记录。
可选的,获取目标源码仓库中的规则文件提交记录,包括:
获取目标源码仓库的对应的***类型,并根据***类型确定目标应用程序接口;
基于预设插件调用目标应用程序接口提取目标源码仓库对应的Redis记录;
根据Redis记录获取规则文件提交记录。
可选的,基于预设接口,根据待更新知识库获取目标知识库,包括:
根据更新指令确定目标虚拟机;
调用预设接口对应的加载函数从目标虚拟机中提取预设知识库;
根据待更新知识库从预设知识库中确定目标知识库。
可选的,根据待更新知识库从预设知识库中确定目标知识库,包括:
获取待更新知识库对应的库名称和待更新版本信息;
从待更新知识库中提取库名称对应的待选知识库;
判断待选知识库的版本信息是否符合待更新版本信息;
在待选知识库的版本信息符合待更新版本信息时,将待选知识库作为目标知识库。
可选的,根据目标知识库对待更新规则包进行更新,获得更新后规则包,包括:
根据待更新知识库确定待更新规则包中的非更新知识库;
根据非更新知识库生成中间更新包;
通过预设设置函数将目标知识库添加至中间更新包,获得更新后规则包。
此外,为实现上述目的,本发明还提出一种规则包更新装置,装置包括:
指令接收模块,用于在接收到更新指令时,根据更新指令获取待更新规则包;
待更新确认模块,用于获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库;
提取模块,用于基于预设接口,根据待更新知识库确定目标知识库;
更新模块,用于根据目标知识库对待更新规则包进行更新,获得更新后规则包。
此外,为实现上述目的,本发明还提出一种规则包更新设备,规则包更新设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的规则包更新程序,规则包更新程序被处理器执行时实现如上文的规则包更新方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,存储介质上存储有规则包更新程序,规则包更新程序被处理器执行时实现如上文的规则包更新方法的步骤。
在本发明中,在接收到更新指令时,根据更新指令获取待更新规则包;获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库;基于预设接口,根据待更新知识库确定目标知识库;根据目标知识库对待更新规则包进行更新,获得更新后规则包。本发明先确定待更新规则包中的待更新知识库,再获取内存中生成好的目标知识库,并且支持将生成好的目标知识库设置到新的规则包中,以替换待更新知识库,从而对规则包内的部分知识库进行更新,提高规则包更新效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的规则包更新设备的结构示意图;
图2为本发明规则包更新方法第一实施例的流程示意图;
图3为本发明规则包更新方法第二实施例的流程示意图;
图4为本发明规则包更新方法第三实施例的流程示意图;
图5为本发明规则包更新装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的规则包更新设备结构示意图。
如图1所示,该规则包更新设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display),可选用户接口1003还可以包括标准的有线接口、无线接口,对于用户接口1003的有线接口在本发明中可为USB接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的存储器(Non-volatileMemory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对规则包更新设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,认定为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及规则包更新程序。
在图1所示的规则包更新设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接用户设备;规则包更新设备通过处理器1001调用存储器1005中存储的规则包更新程序,并执行本发明实施例提供的规则包更新方法。
基于上述硬件结构,提出本发明规则包更新方法的实施例。
参照图2,图2为本发明规则包更新方法第一实施例的流程示意图,提出本发明规则包更新方法第一实施例。
在第一实施例中,规则包更新方法包括以下步骤:
步骤S10:在接收到更新指令时,根据更新指令获取待更新规则包。
应理解的是,本实施例的执行主体为上述规则包更新设备,该规则包更新设备具有数据处理、数据通信及程序运行等功能,规则包更新设备可以为电脑或服务器等计算机设备。规则包更新设备上可安装有基于Drools引擎的业务处理***,通过Drools引擎实现基于各种规则的业务校验流程。当然,还可为其他具有相似功能的设备,本实施方式对此不加以限制。
应理解的是,Drools引擎可通过加载规则包以执行相应的策略。例如,在对用户数据筛选时,以60岁作为筛选条件,对用户数据中60岁以内的用户数据进行保存。若管理者需要对相应策略进行调整时(如将60岁修改为55岁),需要对Drools引擎中相应的规则包进行更新。
需要说明的是,更新指令中携带有待更新规则包的名称,Drools引擎可根据更新指令中的待更新规则包的名称从***中提取对应的待更新规则包。进一步的,更新指令中可一次携带多个待更新规则包的名称,可提高***管理员的管理效率。
***管理员可基于预设的指令输入界面输入待更新规则包的名称,以生成更新指令。输入待更新规则包的名称可由***管理员在预设窗口中直接键入,或者从预设的规则包列表中选取待更新规则包的名称。
需要说明的是,在确定待更新规则包后,可根据待更新规则包的存储地址提取对应的文件,以进行更新。另外,为了保证业务***的稳定运行,在获取待更新规则包之前,还可以判断该待更新规则包是否运行,若是,则暂停更新,等待运行结束后,再提取待更新规则包对应的文件;若否,则直接提取待更新规则包对应的文件。
步骤S20:获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库。
需要说明的是,Drools引擎中以规则文件定义了各种规则、流程和方法等。而知识库中包含了若干规则、流程和方法等。在Drools引擎中,知识库标识为KieBase。通常,每个规则包可包含多个KieBase。在对规则包进行更新时,实际上几个KieBase需要更新。故,为了提高更新速度,本实施方式在对规则包进行更新时,通过对需要更新的知识库进行识别,从而仅对需要更新的KieBase进行更新。
在本实施方式中,待更新规则包中设置有预设更新配置文件,更新配置文件中定义了需要更新的知识库的名称。在更新过程中,规则包更新设备通过读取更新配置文件中的内容可获取待更新知识库的名称,从而确定待更新知识库。在具体实现时,该预设更新配置文件可在规则包编译期间被写入到规则包的根目录下,其文件名可命名为“KieBase.properties”,以便于后续查找。预设更新配置文件的生成可通过人工编写或基于插件自动生成,本实施方式对此不加以限制。
步骤S30:基于预设接口,根据待更新知识库确定目标知识库。
需要说明的是,目标知识库为管理员根据修改或新增后的规则文件生成的知识库,用于对待更新知识库进行替换,实现对待更新知识库的更新。管理员可在源码仓库上传规则文件后,根据修改或新增后的规则文件生成目标知识库,并在规则包更新之前,将生成好的目标知识库保存至预设内存里。
应理解的是,预设接口为重写后的接口,由于Drools源码中类的访问权限基本是受保护的,也没有提供二次开发的接口,无法直接将目标知识库进行加载以替换待更新知识库。因此,需要重写类以重设接口。通过重新定义接口的类,从而实现从预设内存中加载已存储的知识库。由于预设内存中存储有较多的知识库,因此还需要根据待更新知识库确定待更新规则包更新所需的目标知识库。
步骤S40:根据目标知识库对待更新规则包进行更新,获得更新后规则包。
可以理解的是,在对规则包进行更新时,对于不需要更新的知识库可直接加载待更新规则包中的原知识库,对于需要更新的知识库可加载上述目标知识库对待更新知识库进行替换,从而完成对待更新规则包的整体更新。在具体实现时,可基于预设的设置函数以实现将获取的目标知识库写入至新规则包。
在第一实施例中,在接收到更新指令时,根据更新指令获取待更新规则包;获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库;基于预设接口,根据待更新知识库确定目标知识库;根据目标知识库对待更新规则包进行更新,获得更新后规则包。在本实施例中,drools引擎可先确定待更新规则包中的待更新知识库,再获取内存中生成好的目标知识库,并且支持将生成好的目标知识库设置到新的规则包中,以替换待更新知识库,从而对规则包内的部分知识库进行更新,提高规则包更新效率。
参照图3,图3为本发明规则包更新方法第二实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明规则包更新方法的第二实施例。
在第二实施例中,步骤S20之前,还包括:
步骤S110:获取待更新规则包对应的规则文件修改记录。
可以理解的是,为了对知识库进行更新,***管理者通常需要提供更新的规则文件,以创建目标知识库。因此,可通过记录***管理者通过的规则文件修改记录,以确定待更新的知识库。
在具体实现时,根据待更新规则包确定目标源码仓库;获取目标源码仓库中的规则文件提交记录;根据预设时间段对规则文件提交记录进行筛选,获得规则文件修改记录。
应理解的是,源码仓库用于存储规则文件,业务***可与多个源码仓库建立连接,不同规则包可下的规则文件可存储于不同的源码仓库。具体的,源码仓库可以为SVN仓库与GIT仓库。规则包与源码仓库之间的对应关系可通过文件进行保存,在执行规则包更新时,可通过读取该文件确定待更新规则包对应的目标源码仓库,目标源码仓库中存储有待更新规则包对应的规则文件。
在具体实现时,获取目标源码仓库中的规则文件提交记录的过程可以为:获取目标源码仓库的对应的***类型,并根据***类型确定目标应用程序接口;基于预设插件调用目标应用程序接口提取目标源码仓库对应的Redis记录;根据Redis记录获取规则文件提交记录。
可以理解的是,SVN仓库或GIT仓库等源码仓库都提供有java调用的API用来获取提交记录等信息。因此,通过确认源码仓库的类型,从而确认可调用的应用程序接口。
需要说明的是,预设插件可以为Maven打包插件,该插件可根据确定的应用程序接口获取对应的Redis记录。在本实施方式中,通过Redis数据库对规则文件进行存储,因此,可通过对Redis记录进行筛选,可获得相应的规则文件提交记录。
需要说明的是,预设时间段为待更新规则前次发布时间至当前时间之间的时间段。待更新规则前次发布时间之前的规则文件修改记录与本次更新无关,因此为准确确定当前更新规则所需更新的知识库,需要以待更新规则前次发布时间至当前时间的时间段之间的规则文件提交记录作为参考。
步骤S111:根据规则文件修改记录及待更新规则包内置的规则配置文件确定待更新知识库。
应理解的是,规则包中通常都包含有配置文件“kmodule.xml”,该配置文件中定义了各规则文件与知识库KieBase的对应关系。因此,根据该配置可对规则文件修改记录中涉及的规则文件对应的知识库进行查找,从而确定待更新知识库。
步骤S112:根据待更新知识库生成预设更新配置文件,并将预设更新配置文件写入待更新规则包。
需要说明的是,根据待更新知识库生成预设更新配置文件的过程可以为根据待更新知识库的库名称生成预设更新配置文件,以使规则包更新过程中,通过获取库名称确认待更新规则包。在具体实现时,预设更新配置文件的写入过程也可以前述的Maven打包插件执行。在规则包编译期间,Maven打包插件将预设更新文件写入到规则包的根目录下。
在第二实施例中,通过对源码仓库的规则文件提交记录进行提取,确定规则包更新涉及的规则文件;进而根据规则包中内置的配置文件确定需要更新的知识库,再生成预设更新配置文件写入至规则包的根目录中,从而使得规则包进行更新时,快速确认待更新知识库,提高规则包更新效率。
参照图4,图4为本发明规则包更新方法第三实施例的流程示意图,基于上述第一实施例和第二实施例,提出本发明规则包更新方法的第三实施例。本实施例以第一实施例为基础进行说明。
在第三实施例中,步骤S30,具体包括:
步骤S301:根据更新指令确定目标虚拟机。
需要说明的是,知识库通常在虚拟机中生成,***管理员通常在进行对规则包进行更新之前,通过虚拟机将目标知识库进行生成,以便后续直接调用。生成后的目标知识库存在虚拟机中,为了提取正确的目标知识库,可需要确定待更新规则包对应的目标虚拟机及内存地址。在具体实现时,更新指令中可直接携带目标虚拟机的内存地址,或者通过对预设的映射表进行查询,获取虚拟机的内存地址,其中映射表中包含了待更新规则包于虚拟机内存地址之间的对应关系。
步骤S302:调用预设接口对应的加载函数从目标虚拟机中提取预设知识库。
可以理解的是,Drools源码中类的访问权限基本是受保护的,也没有提供二次开发的接口,无法直接将目标知识库进行加载以替换待更新知识库。因此,需要重写类以重设接口。在具体实现时,重写入口的接口KieServices,重命名为FrsKieServices。在接口初始化时创建自定义FrsKieServicesImpl(重写自KieServicesImpl),用于创建自定义的FrsKieContainerImpl(重写自KieContainerImpl)。在FrsKieContainerImpl添加Public的方法setKieBase与getKieBase方法,分别用于设置不需要跟新的KieBase与获取规则包的KieBase对象。继续重写需要用到KieContainerImpl的类KieContainerSessionsPoolImpl重命名为FrsKieContainerSessionsPoolImpl,创建容器。基于重写后的接口,可调用getKieBase函数对从目标虚拟机中提取预设知识库,并将提取到知识库存放至容器中。
步骤S303:根据待更新知识库从预设知识库中确定目标知识库。
由于预设内存中存储有较多的知识库,因此还需要根据待更新知识库确定待更新规则包更新所需的目标知识库。在具体实现时,可获取待更新知识库对应的库名称和待更新版本信息;从待更新知识库中提取库名称对应的待选知识库;判断待选知识库的版本信息是否符合待更新版本信息;在待选知识库的版本信息符合待更新版本信息时,将待选知识库作为目标知识库。
通常,为了提高文件的可区分性,知识库可根据其工作设置相应的库名称及版本信息,其中版本信息可包括版本号,如1.0、1.1等。为了保证正常更新,可通过版本信息识别目标知识库。如,待选知识库中包含有1.0、2.0、3.0版本的知识库,若当前知识库的版本信息为2.0,则对应的3.0版本的知识库即为目标知识库。
进一步的,在实施例中,重写接口后,步骤S40的过程可以为:根据待更新知识库确定待更新规则包中的非更新知识库;根据非更新知识库生成中间更新包;通过预设设置函数setKieBase将目标知识库添加至所述中间更新包,获得更新后规则包。
在第三实施例中,通过重写接口,使Drools引擎能够对规则包中的部分知识库进行更新。通过调用预设函数从虚拟机内存中提取已生成好的目标知识库,并其设置到新规则包,从而更快地实现规则包更新。
此外,本发明实施例还提出一种规则包更新装置。参照图5,图5为本发明规则包更新装置第一实施例的结构框图。
在本实施例中,规则包更新装置包括:
指令接收模块10,用于在接收到更新指令时,根据更新指令获取待更新规则包。
待更新确认模块20,用于获取待更新规则包中的预设更新配置文件,并根据预设更新配置文件确定待更新知识库。
提取模块30,用于基于预设接口,根据待更新知识库确定目标知识库。
更新模块40,用于根据目标知识库对待更新规则包进行更新,获得更新后规则包。
在本实施例中,在接收到更新指令时,根据所述更新指令获取待更新规则包;获取所述待更新规则包中的预设更新配置文件,并根据所述预设更新配置文件确定待更新知识库;基于预设接口,根据所述待更新知识库确定目标知识库;根据所述目标知识库对所述待更新规则包进行更新,获得更新后规则包。本实施方式可先确定待更新规则包中的待更新知识库,再获取内存中生成好的目标知识库,并且支持将生成好的目标知识库设置到新的规则包中,以替换待更新知识库,从而对规则包内的部分知识库进行更新,提高规则包更新效率。
在一实施例中,规则包更新装置还包括更新配置文件写入模块,更新配置文件写入模块,用于获取待更新规则包对应的规则文件修改记录;根据规则文件修改记录及待更新规则包内置的规则配置文件确定待更新知识库;根据待更新知识库生成预设更新配置文件,并将预设更新配置文件写入所述待更新规则包。
在一实施例中,更新配置文件写入模块,还用于根据待更新规则包确定目标源码仓库;获取目标源码仓库中的规则文件提交记录;根据预设时间段对规则文件提交记录进行筛选,获得规则文件修改记录。
在一实施例中,更新配置文件写入模块,还用于获取目标源码仓库的对应的***类型,并根据***类型确定目标应用程序接口;基于预设插件调用所述目标应用程序接口提取目标源码仓库对应的Redis记录;根据Redis记录获取规则文件提交记录。
在一实施例中,提取模块30,还用于根据更新指令确定目标虚拟机;调用预设接口对应的加载函数从目标虚拟机中提取预设知识库;根据待更新知识库从预设知识库中确定目标知识库。
在一实施例中,提取模块30,还用于获取待更新知识库对应的库名称和待更新版本信息;从待更新知识库中提取库名称对应的待选知识库;判断待选知识库的版本信息是否符合待更新版本信息;在待选知识库的版本信息符合待更新版本信息时,将待选知识库作为目标知识库。
在一实施例中,更新模块40,还用于根据所述待更新知识库确定待更新规则包中的非更新知识库;根据非更新知识库生成中间更新包;通过预设设置函数将目标知识库添加至中间更新包,获得更新后规则包。
本发明所述规则包更新装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有规则包更新程序,所述规则包更新程序被处理器执行时实现如上文所述的规则包更新方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为名称。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器镜像(Read Only Memory image,ROM)/随机存取存储器(Random AccessMemory,RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种规则包更新方法,其特征在于,所述方法包括以下步骤:
在接收到更新指令时,根据所述更新指令获取待更新规则包;
获取所述待更新规则包中的预设更新配置文件,并根据所述预设更新配置文件确定待更新知识库;
基于预设接口,根据所述待更新知识库确定目标知识库;
根据所述目标知识库对所述待更新规则包进行更新,获得更新后规则包;
所述获取所述待更新规则包中的预设更新配置文件,并根据所述预设更新配置文件确定待更新知识库之前,还包括:
获取待更新规则包对应的规则文件修改记录;
根据所述规则文件修改记录及所述待更新规则包内置的规则配置文件确定待更新知识库;
根据所述待更新知识库生成预设更新配置文件,并将所述预设更新配置文件写入所述待更新规则包。
2.如权利要求1所述的规则包更新方法,其特征在于,所述获取待更新规则包对应的规则文件修改记录,包括:
根据所述待更新规则包确定目标源码仓库;
获取所述目标源码仓库中的规则文件提交记录;
根据预设时间段对所述规则文件提交记录进行筛选,获得规则文件修改记录。
3.如权利要求2所述的规则包更新方法,其特征在于,所述获取所述目标源码仓库中的规则文件提交记录,包括:
获取所述目标源码仓库的对应的***类型,并根据所述***类型确定目标应用程序接口;
基于预设插件调用所述目标应用程序接口提取所述目标源码仓库对应的Redis记录;
根据所述Redis记录获取规则文件提交记录。
4.如权利要求1-3中任一项所述的规则包更新方法,其特征在于,所述基于预设接口,根据所述待更新知识库获取目标知识库,包括:
根据所述更新指令确定目标虚拟机;
调用预设接口对应的加载函数从所述目标虚拟机中提取预设知识库;
根据所述待更新知识库从所述预设知识库中确定目标知识库。
5.如权利要求4所述的规则包更新方法,其特征在于,所述根据所述待更新知识库从所述预设知识库中确定目标知识库,包括:
获取所述待更新知识库对应的库名称和待更新版本信息;
从所述待更新知识库中提取所述库名称对应的待选知识库;
判断所述待选知识库的版本信息是否符合所述待更新版本信息;
在所述待选知识库的版本信息符合所述待更新版本信息时,将所述待选知识库作为目标知识库。
6.如权利要求4所述的规则包更新方法,其特征在于,所述根据所述目标知识库对所述待更新规则包进行更新,获得更新后规则包,包括:
根据所述待更新知识库确定所述待更新规则包中的非更新知识库;
根据所述非更新知识库生成中间更新包;
通过预设设置函数将所述目标知识库添加至所述中间更新包,获得更新后规则包。
7.一种规则包更新装置,其特征在于,所述装置包括:
指令接收模块,用于在接收到更新指令时,根据所述更新指令获取待更新规则包;
待更新确认模块,用于获取所述待更新规则包中的预设更新配置文件,并根据所述预设更新配置文件确定待更新知识库;
提取模块,用于基于预设接口,根据所述待更新知识库确定目标知识库;
更新模块,用于根据所述目标知识库对所述待更新规则包进行更新,获得更新后规则包;
所述待更新确认模块,还用于获取待更新规则包对应的规则文件修改记录;根据所述规则文件修改记录及所述待更新规则包内置的规则配置文件确定待更新知识库;根据所述待更新知识库生成预设更新配置文件,并将所述预设更新配置文件写入所述待更新规则包。
8.一种规则包更新设备,其特征在于,所述规则包更新设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的规则包更新程序,所述规则包更新程序被所述处理器执行时实现如权利要求1至6中任一项所述的规则包更新方法的步骤。
9.一种存储介质,其特征在于,所述存储介质上存储有规则包更新程序,所述规则包更新程序被处理器执行时实现如权利要求1至6中任一项所述的规则包更新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011502803.9A CN112612833B (zh) | 2020-12-18 | 2020-12-18 | 规则包更新方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011502803.9A CN112612833B (zh) | 2020-12-18 | 2020-12-18 | 规则包更新方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112612833A CN112612833A (zh) | 2021-04-06 |
CN112612833B true CN112612833B (zh) | 2024-03-29 |
Family
ID=75241025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011502803.9A Active CN112612833B (zh) | 2020-12-18 | 2020-12-18 | 规则包更新方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112612833B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113992754B (zh) * | 2021-10-25 | 2023-12-22 | 北京恒安嘉新安全技术有限公司 | 深度报文检测设备的策略更新方法、装置、设备和介质 |
CN114021723B (zh) * | 2021-11-26 | 2022-11-08 | 深圳创维智慧科技有限公司 | 医疗知识库的规则管理方法、装置及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776635A (zh) * | 2015-11-24 | 2017-05-31 | 北京国双科技有限公司 | 知识库数据的更新方法及装置 |
CN106844772A (zh) * | 2017-02-28 | 2017-06-13 | 东软集团股份有限公司 | 应用数据库的更新方法及装置 |
CN110119283A (zh) * | 2019-05-15 | 2019-08-13 | 浪潮通用软件有限公司 | 一种应用更新处理方法、装置及***、应用更新*** |
CN110224878A (zh) * | 2019-06-28 | 2019-09-10 | 北京金山云网络技术有限公司 | 网关配置更新方法、装置和服务器 |
US10592554B1 (en) * | 2017-04-03 | 2020-03-17 | Massachusetts Mutual Life Insurance Company | Systems, devices, and methods for parallelized data structure processing |
CN111679847A (zh) * | 2020-05-26 | 2020-09-18 | 深圳Tcl数字技术有限公司 | 规则文件的更新方法、终端设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679530B (zh) * | 2013-11-26 | 2017-12-29 | 英业达科技有限公司 | 服务器***与固件更新方法 |
-
2020
- 2020-12-18 CN CN202011502803.9A patent/CN112612833B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776635A (zh) * | 2015-11-24 | 2017-05-31 | 北京国双科技有限公司 | 知识库数据的更新方法及装置 |
CN106844772A (zh) * | 2017-02-28 | 2017-06-13 | 东软集团股份有限公司 | 应用数据库的更新方法及装置 |
US10592554B1 (en) * | 2017-04-03 | 2020-03-17 | Massachusetts Mutual Life Insurance Company | Systems, devices, and methods for parallelized data structure processing |
CN110119283A (zh) * | 2019-05-15 | 2019-08-13 | 浪潮通用软件有限公司 | 一种应用更新处理方法、装置及***、应用更新*** |
CN110224878A (zh) * | 2019-06-28 | 2019-09-10 | 北京金山云网络技术有限公司 | 网关配置更新方法、装置和服务器 |
CN111679847A (zh) * | 2020-05-26 | 2020-09-18 | 深圳Tcl数字技术有限公司 | 规则文件的更新方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112612833A (zh) | 2021-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106775723B (zh) | 基于Android平台的***固件定制的方法和Android设备 | |
KR101643022B1 (ko) | 카탈로그-기반 소프트웨어 컴포넌트 관리 | |
US11748752B2 (en) | Modular, configurable smart contracts for blockchain transaction processing validations | |
US8983935B2 (en) | Methods for utilizing a javascript emulator in a web content proxy server and devices thereof | |
US7900202B2 (en) | Identification of software execution data | |
CN112612833B (zh) | 规则包更新方法、装置、设备及存储介质 | |
JPH0877117A (ja) | デジタル署名を用いた進行オブジェクト指向型プログラムの有効利用方法および装置 | |
US8949590B2 (en) | Controlling access to software component state | |
CN115185550A (zh) | 服务部署方法、装置、计算机设备及存储介质 | |
CN112612502A (zh) | 补丁生成方法、装置、设备及存储介质 | |
JP2006048645A (ja) | ドキュメントにコンテキスト情報を埋め込むための方法およびシステム | |
CN111552791B (zh) | 规则库管理***及方法 | |
CN109857432A (zh) | 一种游戏应用的热更新方法和装置 | |
CN111857881A (zh) | 基于repo的manifest仓库加载方法、装置及存储介质 | |
CN114911497A (zh) | 一种sdk升级方法、装置以及计算机设备 | |
CN115794214B (zh) | 应用模块元数据管理方法、设备、存储介质及装置 | |
CN115291887A (zh) | 代码生成方法、装置、设备及存储介质 | |
CN114936030A (zh) | 一种基于权限控制的软件包管理方法及*** | |
CN111737964B (zh) | 表格动态处理方法、设备及介质 | |
CN112579129A (zh) | 基于服务器的软件更新方法、装置、设备及存储介质 | |
CN112148301A (zh) | 一种非编译的Android***客制化版本集成制作的方法、***及存储介质 | |
CN110928639A (zh) | 一种Windows虚拟化镜像分层管理方法及装置 | |
JP6915338B2 (ja) | Icカード | |
US7721302B2 (en) | Method and system for installing a self-contained application to operate with a previously installed self-contained application | |
CN113347620A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |