tsx81429 发表于 2024-6-28 07:15:08

开源规则引擎LiteFlow怎样集成和项目应用验证

本文先容基于开源规则引擎LiteFlow,怎样开发规则设计器,在低代码平台中集成规则引擎,并在项目中实现应用的效果。由于低代码平台利用规则引擎实现了逻辑编排的需求,以是本文中的叫法为“逻辑设计”、“逻辑编排”、“逻辑流引擎”等。
逻辑设计(规则设计),可以将复杂且多变的业务规则从硬编码中解耦,封装成独立、可复用的业务组件,通过可视化规则设计器按业务需求编排业务组件的执行逻辑,使得业务规则的变动无需修改项目代码、不用重启服务器就可以在线上情况立刻见效,实现灵活应对业务需求变化。好比说订单代价盘算,有折扣、满减、促销券、会员等级,不同会员等级在不同促销场景下(618、双11等),盘算代价的规则是不一样的,这种需求就可以举行规则编排,面临业务需求快速变化,能够及时调整应对。
https://img2024.cnblogs.com/blog/2435483/202406/2435483-20240627145916792-2087704901.png
逻辑设计的利用步调包罗:逻辑组件定义和注册--->逻辑流设计编排--->调用逻辑流
1)逻辑组件定义和注册:将执行逻辑的代码注册成组件,以供后面举行逻辑流的编码。
2)逻辑流设计编排:通过设计器对组件的执行顺序、规则举行编排,形成可执行的逻辑流模子。
3)业务调用逻辑流:在表单、流程等扩展事件中通过HTTP或者Java API举行逻辑流的调用,来执行整个流程。
1.逻辑组件定义和注册

LiteFlow规则引擎支持多种开发语言开发逻辑组件,包罗Java、Groovy、JavaScript等;其中后两者又属于脚本组件,可以举行在线注册和代码编写。前者则是需要在后端项目中写代码逻辑,并通过注解声明为一个组件,然后再通过页面将其给注册出来。
https://img2024.cnblogs.com/blog/2435483/202406/2435483-20240627145916797-187241955.png
2.逻辑流可视化设计编排

逻辑组件开发完成并注册后,接下来就可以设计逻辑流了,打开逻辑流设计器(规则设计器),在线可视化设计逻辑流,可以直接复用注册的逻辑组件,也可以在设计器里直接定义逻辑组件。
https://img2024.cnblogs.com/blog/2435483/202406/2435483-20240627145916771-659157299.png
设计好了逻辑流模子后,可以举行模拟测试,点击模拟测试,弹出模拟测试框。
在举行模拟测试时,可以填写或修改逻辑流的入参变量。填写好后点击右下角测试按钮,即可展示测试结果。
https://img2024.cnblogs.com/blog/2435483/202406/2435483-20240627145917002-930654309.png
【执行流】执行组件的流向
【执行节点】执行组件执行的各种信息
【整体用时】执行该逻辑流花费了多长时间
3.业务怎样调用逻辑流

设计好我们的逻辑流模子后应该怎么去调用,我们目条件供了两种方式,分别是HTTP调用,和在后端代码中通过Java接口来调用执行。
我们首先来构建一个场景,以购物网站购物下单盘算代价为例。通常我们网购时都会有各种优惠,好比满减、会员折扣、优惠券等等,这些优惠有时候会有有时候没有,这时我们可以通过逻辑流来编排我们订单代价盘算的逻辑。首先我们要把不同的盘算逻辑给独立成不同的组件。然后通过我们的逻辑流设计器把组件关联起来。
下面就是我们编排好的逻辑流模子,每个组件都有他们自己的职责,我们可以随意的更改我们的盘算逻辑,好比去除满减活动,添加520促销活动的逻辑组件,更换两个组件的执行顺序。
https://img2024.cnblogs.com/blog/2435483/202406/2435483-20240627145916793-1619534409.png
然后在表单按钮点击事件里,自定义脚本通过HTTP服务调用逻辑流来盘算订单代价,这样就实现了业务和逻辑流引擎的集成。如果是后端开发需要调用逻辑流,可以直接利用Java API 调用。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 开源规则引擎LiteFlow怎样集成和项目应用验证