CN112085201B - 一种基于微服务应用的逻辑推演方法 - Google Patents

一种基于微服务应用的逻辑推演方法 Download PDF

Info

Publication number
CN112085201B
CN112085201B CN202010998972.XA CN202010998972A CN112085201B CN 112085201 B CN112085201 B CN 112085201B CN 202010998972 A CN202010998972 A CN 202010998972A CN 112085201 B CN112085201 B CN 112085201B
Authority
CN
China
Prior art keywords
deduction
service
micro
result
factor
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
Application number
CN202010998972.XA
Other languages
English (en)
Other versions
CN112085201A (zh
Inventor
黄威生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Pharmaceutical Information Technology Co ltd
Original Assignee
Guangzhou Pharmaceutical Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Pharmaceutical Information Technology Co ltd filed Critical Guangzhou Pharmaceutical Information Technology Co ltd
Priority to CN202010998972.XA priority Critical patent/CN112085201B/zh
Publication of CN112085201A publication Critical patent/CN112085201A/zh
Application granted granted Critical
Publication of CN112085201B publication Critical patent/CN112085201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Abstract

本发明公开了一种基于微服务应用的逻辑推演方法包括:建立推演规则、以微服务初始化独立因素和依赖因素默认值、开始推演流程,并将推演中间结果通过微服务持久化到数据库、结束推演流程,生成推演结果并保存。本发明基于微服务,可以以调用微服务的形式初始化逻辑因素值和将推演中间结果持久化到数据库,极大地提高了推演规则的实用性和可靠性。

Description

一种基于微服务应用的逻辑推演方法
技术领域
本发明涉及逻辑运算技术领域,具体为一种基于微服务应用的逻辑推演方法。
背景技术
逻辑推演是指利用一个或几个已知因素推出一个结果的思维形式,是通过分析和判断,计算得出未知信息的过程。首先,逻辑推演属于理性认识阶段的逻辑思维形式,是人类思维活动的主要体现;其次,逻辑推演是由概念的因素组成的,能够从已知的因素推出未知的结果;最后,逻辑推演的客观基础是客观事物相互之间的关系,是客观事物相互之间的关系在人脑中的反映。
计算机解决逻辑推演问题要依靠逻辑表达式,也即是推演规则。
当前计算机常用的逻辑推演方法运算从头至尾,不保存中间的推演结果,往往因为运算进程被终止而丢失所有推演结果;同时,当前的推演方法只能在推演运算前设置推演因素的值,而不能通过外部服务的方式动态赋值,这有损于逻辑推演的实用性。
发明内容
本发明的目的在于提供一种基于微服务应用的逻辑推演方法,解决了背景技术提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于微服务应用的逻辑推演方法:包括如下步骤
S1:建立推演规则:
1)分析业务流程,将流程数字化和规则化,拆分每一个流程步骤为一个单独的依赖因素。
2)根据业务流程的先后顺序,编排独立因素和依赖因素,组合成细分的推演规则。
S2:以微服务初始化独立因素和依赖因素默认值:
1)每一个逻辑因素都有初始默认值,独立因素初始默认值为True,依赖因素初始默认值为False。
如独立因素类型为外服务类型以f()表示,则需调用微服务以初始化其值。
2)外服务类型表示需调用微服务取得返回值,并经过中间服务层转换处理,而为独立因素赋予True或False的类型。
S3:开始推演流程,并将推演中间结果通过微服务持久化到数据库:
触发开始运算事件,调用推演规则:
按照推演规则的阶段顺序,从阶段1开始,直到阶段k(k=1,2,3…),执行每一个阶段内的细分推演规则。
记录每一个细分推演规则的因素值和推演结果值,以调用微服务的形式提交至数据存储层,将其持久化到数据库。
S4:结束推演流程,生成推演结果并保存:执行完所有阶段内的细分规则,得到推演规则的最后结果,通过微服务提交推演结果,保存到数据库。
优选的,所述依赖因素是细分推演规则运算的结果,根据其所处的推演阶段,区分依赖层次;如阶段k的推演结果,则为k-dependent因素。
所述独立因素只能由外部事件初始化其值的因素,不依赖于其他的因素,也称之为0-dependent因素。
按照依赖因素的依赖层次,将细分的推演规则以依赖因素的依赖层次为依据划分推演阶段,并组合成总的推演规则。
优选的,所述阶段k的推演结果:推演阶段k包含一或N条细分的推演规则,每一条细分规则的推演结果都是阶段k的推演结果;其中,N≥1。
优选的,所述中间服务层转换处理:调用微服务得到的返回值可以为非Boolean类型,如字符串和数字类型。
对于字符串类型需将空字符串和NULL转为False,其余为True。
对于数字类型,需将负数转为False,0和正数转为True。
优选的,所述按照推演规则的阶段顺序:阶段之间会严格按照从低至高(1-k,k=1,2,3…)的顺序执行;阶段内有多条细分规则的,可同时执行。
与现有技术相比,本发明的有益效果如下:相比于一般的逻辑推演方法,本发明基于微服务,可以以调用微服务的形式初始化逻辑因素值和将推演中间结果持久化到数据库,极大地提高了推演规则的实用性和可靠性。
附图说明
图1是本发明所示的逻辑推演方法的流程图;
图2是一个具体实施例中所使用的独立因素和依赖因素;
图3是一个具体实施例中所使用的推演规则;
图4是外服务类型独立因素的赋值过程;
图5是得出细分推演规则结果并持久化到数据库的过程;
图6是一个具体实施例中得到的最后推演结果。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1至图6,本发明提供三种基于微服务应用的逻辑推演方法技术方案:
实施例1
一种基于微服务应用的逻辑推演方法,包括以下步骤:
步骤1:建立推演规则。
步骤2:以微服务初始化独立因素和依赖因素默认值。
步骤3:开始推演流程,并将推演中间结果通过微服务持久化到数据库。
步骤4:结束推演流程,生成推演结果并保存。
本发明的逻辑推演方法基于微服务,可以以调用微服务的形式初始化逻辑因素值和将推演中间结果持久化到数据库,极大地提高了推演规则的实用性和可靠性。
实施例中,所述步骤1,建立推演规则,包括:
分析业务流程,将流程数字化和规则化,拆分每一个流程步骤为一个单独的依赖因素。
根据业务流程的先后顺序,编排独立因素和依赖因素,组合成细分的推演规则。
依赖因素:是细分推演规则运算的结果,根据其所处的推演阶段,区分依赖层次。如阶段k的推演结果,则为k-dependent因素;
独立因素:只能由外部事件初始化其值的因素,不依赖于其他的因素,也称之为0-dependent因素;
按照依赖因素的依赖层次,将细分的推演规则以依赖因素的依赖层次为依据划分推演阶段,并组合成总的推演规则。
一个具体实施例的推演规则的部分规则:
实施例中,所述步骤1,所述阶段k的推演结果,包括:
推演阶段k包含一或多条细分的推演规则,每一条细分规则的推演结果都是阶段k的推演结果。
实施例1中,所述步骤2,所述以微服务初始化独立因素和依赖因素默认值,包括:
每一个逻辑因素都有初始默认值,独立因素初始默认值为True,依赖因素初始默认值为False。
如独立因素类型为外服务类型(以f()表示),则需调用微服务以初始化其值。
实施例1中,所述步骤2,所述外服务类型,包括:
外服务类型表示需调用微服务取得返回值,并经过中间服务层转换处理,而为独立因素赋予True或False的类型。
实施例1中,所述步骤2,所述中间服务层转换处理,包括:
调用微服务得到的返回值可以为非Boolean类型,如字符串和数字类型。
对于字符串类型需将空字符串和NULL转为False,其余为True。
对于数字类型,需将负数转为False,0和正数转为True。
实施例1中,所述步骤3,所述开始推演流程,并将推演中间结果通过微服务持久化到数据库,包括:
触发开始运算事件,调用推演规则。
按照推演规则的阶段顺序,从阶段1开始,直到阶段k(k=1,2,3…),执行每一个阶段内的细分推演规则。
记录每一个细分推演规则的因素值和推演结果(中间结果)值,以调用微服务的形式提交至数据存储层,将其持久化到数据库。
实施例1中,所述步骤4,所述结束推演流程,生成推演结果并保存,包括:
执行完所有阶段内的细分规则,得到推演规则的最后结果。
通过微服务提交推演结果,保存到数据库。
实施例2
一个外服务类型独立因素的赋值过程,具体步骤为:
步骤1:读取逻辑因素信息,得到其因素类型。
步骤2:判断其类型是否为外服务类型,如果是则进入步骤3,如果否则进入步骤6。
步骤3:得到逻辑因素的服务地址、参数、提交形式等信息,以微服务形式提交到逻辑服务层。
步骤4:逻辑服务层根据逻辑因素的服务信息,发出服务请求,并得到其返回值。
步骤5:转换层根据特定条件,将返回值转换成True或False。
步骤6:为逻辑因素赋值。
实施例3
得出细分推演规则结果并持久化到数据库的过程,具体步骤为:
步骤1:执行细分推演规则,得到推演结果,以微服务形式提交至转换层.
步骤2:转换层做数据转换处理,提交至数据存储层。
步骤3:数据存储层将数据持久化保存到数据库,并返回保存结果。
一些实施例中,所述步骤3,所述按照推演规则的阶段顺序,包括:
阶段之间会严格按照从低至高(1-k,k=1,2,3…)的顺序执行。
阶段内有多条细分规则的,可同时执行。
实施例4
将所有逻辑因素、细分推演规则结果和最后结果组装一起并序列化成JSON格式数据,通过微服务提交到转换层。
在数据转换层将JSON数据反序列化为JAVA对象数组,遍历数组元素,将逻辑因素与细分推演规则一一对应,重新组合为逻辑因素-推演规则-细分推演结果的形式,最后以N:1:1的映射关系通过数据存储层保存数据库。
将细分推演结果与最终推演结果以N:1的映射关系通过数据存储层保存到数据库中。
将独立因素的输入值根据输入类型转换基本数据类型(INTEGER,LONG,STRING等),通过数据存储层保存到数据库中。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (4)

1.一种基于微服务应用的逻辑推演方法,其特征在于:包括如下步骤:
S1:建立推演规则:
1)分析业务流程,将流程数字化和规则化,拆分每一个流程步骤为一个单独的依赖因素;
2)根据业务流程的先后顺序,编排独立因素和依赖因素,组合成细分的推演规则;
S2:以微服务初始化独立因素和依赖因素默认值:
1)每一个逻辑因素都有初始默认值,独立因素初始默认值为True,依赖因素初始默认值为False;
如独立因素类型为外服务类型以f()表示,则需调用微服务以初始化其值;
2)外服务类型表示需调用微服务取得返回值,并经过中间服务层转换处理,而为独立因素赋予True或False的类型;
S3:开始推演流程,并将推演中间结果通过微服务持久化到数据库:
触发开始运算事件,调用推演规则:
按照推演规则的阶段顺序,从阶段1开始,直到阶段k(k=1,2,3 …),执行每一个阶段内的细分推演规则;
记录每一个细分推演规则的因素值和推演结果值,以调用微服务的形式提交至数据存储层,将其持久化到数据库;
S4:结束推演流程,生成推演结果并保存:执行完所有阶段内的细分规则,得到推演规则的最后结果,通过微服务提交推演结果,保存到数据库;
所述依赖因素是细分推演规则运算的结果,根据其所处的推演阶段,区分依赖层次;
所述独立因素只能由外部事件初始化其值的因素,不依赖于其他的因素,也称之为0-dependent 因素;
按照依赖因素的依赖层次,将细分的推演规则以依赖因素的依赖层次为依据划分推演阶段,并组合成总的推演规则。
2.根据权利要求1所述的一种基于微服务应用的逻辑推演方法,其特征在于:所述阶段k的推演结果:推演阶段k包含一或N条细分的推演规则,每一条细分规则的推演结果都是阶段k的推演结果;其中,N≥1。
3.根据权利要求1所述的一种基于微服务应用的逻辑推演方法,其特征在于:所述中间服务层转换处理:调用微服务得到的返回值;
对于字符串类型需将空字符串和NULL转为False,其余为True;
对于数字类型,需将负数转为False,0和正数转为True。
4.根据权利要求1所述的一种基于微服务应用的逻辑推演方法,其特征在于:所述按照推演规则的阶段顺序:阶段之间会严格按照从低至高(1-k,k=1,2,3 …)的顺序执行;阶段内有多条细分规则的,同时执行。
CN202010998972.XA 2020-09-22 2020-09-22 一种基于微服务应用的逻辑推演方法 Active CN112085201B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010998972.XA CN112085201B (zh) 2020-09-22 2020-09-22 一种基于微服务应用的逻辑推演方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010998972.XA CN112085201B (zh) 2020-09-22 2020-09-22 一种基于微服务应用的逻辑推演方法

Publications (2)

Publication Number Publication Date
CN112085201A CN112085201A (zh) 2020-12-15
CN112085201B true CN112085201B (zh) 2021-05-18

Family

ID=73739387

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010998972.XA Active CN112085201B (zh) 2020-09-22 2020-09-22 一种基于微服务应用的逻辑推演方法

Country Status (1)

Country Link
CN (1) CN112085201B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189393A (zh) * 2018-07-24 2019-01-11 中国联合网络通信集团有限公司 业务处理方法及装置
CN109344153A (zh) * 2018-08-22 2019-02-15 中国平安人寿保险股份有限公司 业务数据的处理方法及终端设备
CN109947547A (zh) * 2019-03-14 2019-06-28 科学出版社成都有限责任公司 基于云计算的微服务构架方法
CN110542920A (zh) * 2019-09-03 2019-12-06 北京云庐科技有限公司 地震数据处理方法及其系统
CN110932393A (zh) * 2019-11-19 2020-03-27 许继集团有限公司 一种变电站保信主站系统及其数据初始化方法
CN110955534A (zh) * 2019-10-10 2020-04-03 荣邦科技有限公司 一种基于中间件的业务流程自动化系统及方法
CN111092933A (zh) * 2019-11-20 2020-05-01 泰康保险集团股份有限公司 用于微服务架构的业务流程管理方法、系统、介质及电子设备
CN111124708A (zh) * 2019-12-10 2020-05-08 广州小鹏汽车科技有限公司 面向微服务的批推理方法、服务器和计算机可读存储介质
CN111580896A (zh) * 2020-05-04 2020-08-25 武汉众邦银行股份有限公司 一种基于原子化服务的链路调用方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995781B (zh) * 2014-06-10 2017-08-25 浪潮通用软件有限公司 一种基于模型的构件测试用例生成方法
US9875086B1 (en) * 2016-09-29 2018-01-23 International Business Machines Corporation Optimizing performance of applications driven by microservices architecture
US10013550B1 (en) * 2016-12-30 2018-07-03 ShieldX Networks, Inc. Systems and methods for adding microservices into existing system environments
CN107704265B (zh) * 2017-09-30 2020-08-18 电子科技大学 一种面向业务流可配置的规则生成方法
CN108337106B (zh) * 2017-12-18 2021-07-16 海尔优家智能科技(北京)有限公司 物联网微服务系统架构的构建方法、平台及计算机设备
CN110286884B (zh) * 2019-06-21 2023-10-13 北京百度网讯科技有限公司 微服务编排方法、装置、设备及计算机可读存储介质
CN110633098B (zh) * 2019-08-20 2023-11-14 华能四川水电有限公司 一种组件化服务的实现方式
CN111203887B (zh) * 2020-02-23 2022-08-23 陕西理工大学 一种基于nsga-ii模糊逻辑推理的机器人控制系统优化方法
CN111405249A (zh) * 2020-03-20 2020-07-10 腾讯云计算(北京)有限责任公司 监控方法、装置及服务器和计算机可读存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189393A (zh) * 2018-07-24 2019-01-11 中国联合网络通信集团有限公司 业务处理方法及装置
CN109344153A (zh) * 2018-08-22 2019-02-15 中国平安人寿保险股份有限公司 业务数据的处理方法及终端设备
CN109947547A (zh) * 2019-03-14 2019-06-28 科学出版社成都有限责任公司 基于云计算的微服务构架方法
CN110542920A (zh) * 2019-09-03 2019-12-06 北京云庐科技有限公司 地震数据处理方法及其系统
CN110955534A (zh) * 2019-10-10 2020-04-03 荣邦科技有限公司 一种基于中间件的业务流程自动化系统及方法
CN110932393A (zh) * 2019-11-19 2020-03-27 许继集团有限公司 一种变电站保信主站系统及其数据初始化方法
CN111092933A (zh) * 2019-11-20 2020-05-01 泰康保险集团股份有限公司 用于微服务架构的业务流程管理方法、系统、介质及电子设备
CN111124708A (zh) * 2019-12-10 2020-05-08 广州小鹏汽车科技有限公司 面向微服务的批推理方法、服务器和计算机可读存储介质
CN111580896A (zh) * 2020-05-04 2020-08-25 武汉众邦银行股份有限公司 一种基于原子化服务的链路调用方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Microservices Tenets: Agile Approach to Service Development and Deployment;Olaf Zimmermann;《Computer science》;20171231;第32卷(第3-4期);第301-310页 *
基于MR与微服务的隧道应急模拟与推演系统;喻钢等;《中国安全科学学报》;20200131;第30卷(第1期);第162-167页 *
电子商城系统中订单模块与秒杀模块的设计与实现;徐士川;《中国优秀硕士学位论文全文数据库 信息科技辑》;20181015(第10期);第I138-205页 *

Also Published As

Publication number Publication date
CN112085201A (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
CN108446313B (zh) 一种数据格式转换方法和装置
US20200285508A1 (en) Method and Apparatus for Assigning Computing Task
CN108509556A (zh) 数据迁移方法和装置、服务器、存储介质
US20070043693A1 (en) Systems and methods for storing a dataset having a hierarchical data structure in a database
CN112416908A (zh) 基于Handle标识解析前缀分库存储数据的方法及系统
CN114328682A (zh) 一种基于规则引擎的数据处理方法、装置、设备及介质
US8024374B2 (en) Computer object conversion using an intermediate object
CN112085201B (zh) 一种基于微服务应用的逻辑推演方法
CN113760839A (zh) 日志数据压缩处理方法、装置、电子设备和存储介质
WO2022199400A1 (zh) 持久内存文件系统元数据的检索方法和装置、存储结构
CN116431598A (zh) 一种基于Redis的关系型数据库全量内存化的方法
CN112328231B (zh) python字典和结构体间的快速转换方法
CN113407565A (zh) 跨库数据查询方法、装置和设备
CN113672375B (zh) 资源分配预测方法、装置、设备及存储介质
CN111797278A (zh) 一种映射关联对象与关系的方法
CN115329753B (zh) 一种基于自然语言处理的智能数据分析方法和系统
CN116244387A (zh) 实体关系构建方法、装置、电子设备及存储介质
CN110175128A (zh) 一种相似代码案例获取方法、装置、设备和存储介质
CN114691645A (zh) 基于数字化智能的大数据需求分析方法及服务器
KR20210040311A (ko) 개체를 위해 개별화 규칙을 맞춤 제정하는 방법, 장치, 기기, 저장 매체 및 컴퓨터 프로그램
CN105930521A (zh) 一种数据库管理装置和方法
KR102028487B1 (ko) 문서의 토픽 모델링 장치 및 방법, 이를 기록한 기록매체
TWI819943B (zh) 資料索引值產生裝置、資料索引值產生方法及其電腦程式產品
CN113821211B (zh) 命令解析方法、装置、存储介质和计算机设备
CN113282309B (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