`
Mr-zhang
  • 浏览: 17001 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

究竟什么才是真正的规则引擎

阅读更多
    可能很多人还不了解规则引擎是什么东西,或者不知道规则引擎究竟有什么用。我们都知道工作流引擎,也听说过JBoss下面有个Drools,或者我们知道 weblogic或者Oracle也有自己的Business Rule,我们可能还听说过ILOG被IBM收购了,如果我们研究微软的WWF,可能也知道其中有RuleSet等内容。国内的一些web快速开发平台,也提到了规则引擎。
    在我们的印象中,我们感觉规则引擎就是解决业务逻辑层的实现问题的。因此我们理所当然的觉得工作流中的某个节点的逻辑处理,应该可以用规则引擎来解决,那么工作流本身的逻辑也应该可以由规则引擎来解决。另外我们也会觉得,平时项目当中的业务逻辑应该都可以用规则引擎来解决。但是当我们在使用上述这些规则引擎,却发现很难和我们实际应用的业务逻辑层的业务逻辑实现相对应。
   我们以JBoss的Drools为例,由于其规则引擎使用了匹配规则的方式来进行,因此在应用这些规则引擎时。首先需要将我们具体应用中的业务逻辑做抽象,抽象成一条条规则之后,再打包成一个规则包。一个规则包相当于一个智能块。当数据传递给这个智能块后,系统会以匹配的方式应用满足条件的逻辑处理。当采用这种方式时,应该说逻辑更抽象了,在一个更高的层次加以抽象化的定义。但是也使得规则引擎的应用得到了很大的限制。首先这种抽象本身需要一个复杂的分析过程,这需要有很强的分析设计能力。另外我们平时具体应用中的业务逻辑层,大量的逻辑都是对实际数据的处理,很多时候还是一个批量数据的处理,甚至有些逻辑需要的参数我们并不能定义在规则中,而是在数据库表中进行配置。因此我们常见的业务逻辑层的开发,并不能先设计出一个数据模型,然后再在此基础上抽象逻辑。因此我们发现Drools等规则引擎很难用,根本不是我们所需要的那样。我们研究规则引擎也有一段时间了。有时候我们发现自己做的规则引擎并不是一个规则引擎。因为我们和像Drools这些规则引擎有很大的差别。但我们确实解决了业务逻辑层的业务逻辑配置问题。应该说我们的更实用一些。但是我们却没法去实现JSR94标准。我们不光处理业务逻辑,还把所有业务逻辑层需要处理的操作全部采用规则配置的形式,包括数据库处理逻辑等。
    接下来我们讲述一下Visual Rules Solution(后续介绍用:“VRS”代替“Visual Rules Solution”),是一个基于规则引擎实现的可视化定制业务逻辑的商业规则管理系统,同时又具有快速开发java软件项目的功能。VRS可以在程序外部对软件项目中所涉及的业务逻辑进行单独管理,并且提供多种语言的API接口供外部程序调用。VRS可以集成到现有的软件项目中,将软件中经常容易发生变化的部分,独立出来由规则库进行管理。可以用于直接开发web项目,Visual Rules可以为软件项目生成90%以上的程序代码,节约50%以上的软件开发时间以及减少80%以上的软件维护工作量。
   VRS是开发B/S结构软件项目的利器,特别适用于快速开发基于J2EE结构的软件项目。其原理是对于J2EE项目,一般其架构分为界面层、业务逻辑层和数据层。VRS提供了数据库管理器,可以生成几乎全部的数据库层代码;提供了规则编辑器可视化快速开发业务逻辑;提供了规则引擎可以动态加载和执行业务逻辑;提供了页面模版编辑器以及页面生成器可以生成大部分界面层代码;提供了在线的业务逻辑管理平台,可以直接供客户(包括非技术人员)直接修改软件项目中实现的业务逻辑。VRS优势在于可以解决了软件开发中一直以来业务逻辑层只能手工书写代码的问题,为业务逻辑层的实现提供了采用类自然语言(业务人员可以理解的语言)的可视化开发工具,以及在线方式的业务逻辑编辑工具直接供业务人员修改逻辑。 
   
分享到:
评论

相关推荐

    Drools规则引擎从入门到精通

    从基础讲起,结合应用场景,由浅到深细化讲解drools规则引擎的的相关知识,并结合具体实例,演示功能的使用和注意事项。后面通过搭建具体的项目并结合springboot框架联合使用Drools的相关知识包括决策表的使用,囊括...

    Drools规则引擎从入门到精通源码

    从基础讲起,结合应用场景,由浅到深细化讲解drools规则引擎的的相关知识,并结合具体实例,演示功能的使用和注意事项。后面通过搭建具体的项目并结合springboot框架联合使用Drools的相关知识包括决策表的使用,囊括...

    雷达:实时风控引擎(Risk Engine),自定义规则引擎(Rule Script),完美支持中文,适用于反欺诈(Anti-fraud)应用场景,开箱即用!!! ,你得到到了吗?

    风控引擎(Radar) 项目介绍 一种基于Java语言,使用Springboot + Mongodb + Groovy + Es等框架构建的轻量级实时风控引擎,适用于反欺诈应用场景,极简的配置,真正...自定义规则引擎,更加灵活,支持复杂多变的场景

    MDA模型驱动引擎-带你走进真正的模型驱动开发(一)

    左侧是需要用到的元素,简单说来包括1.Product(产品&服务--可以看作系统名称),2.Role(角色--可以看作具体的业务表),3.Property(属性--表里的列),4.WorkFlow(业务流程),5.Rules(业务规则)。带箭头的为...

    轻量级实时风控引擎全部代码+数据库.rar

    使用Springboot + Mongodb + Groovy + Es等框架搭建的轻量级实时风控... * 自定义规则引擎,更加灵活,支持复杂多变的场景 * 插件化的设计,快速接入其它数据能力平台 * NoSQL,易扩展,高性能 * 配置简单,开箱即用

    搜索引擎优化(SEO)知识完全手册

    因此,国内外网络营销人士都自发展开对以Google为代表的主流搜索引擎排名规则的研究,并衍生出一个风风火火的搜索引擎优化服务领域,在国内国外都有着广阔的市场。  真正的SEO是通过采用易于搜索引擎索引的合理...

    《搜索引擎优化(SEO)知识完全手册》

    因此,国内外网络营销人士都自发展开对以Google为代表的主流搜索引擎排名规则的研究,并衍生出一个风风火火的搜索引擎优化服务领域,在国内国外都有着广阔的市场。  真正的SEO是通过采用易于搜索引擎索引的合理...

    业务规则管理在电信网管系统中的应用

    系统真正面向业务人员.并使软件系统从以代码驱动 的开发发展到以业务规则或模型为驱动的开发。 规则管理系统提供用户创建、配置、管理整个企 业业务规则所必需的一切资源.让业务规则管理变得 十分有效。系统应用很...

    IK Expression(表达式引擎)

    IK Expression 是一个开源的(OpenSource),可...在实际项目应用中,我们可以将业务规则公式化,然后用IK表达式来解析,这样不管以后业务规则怎么变,我们只需要配置或修改相应的公式而已,真正做到了以不变应万变。

    radar实时风控引擎 v1.0.6

    项目特点:实时风控,特殊场景可以做到100ms内响应可视化规则编辑器,丰富的运算符、计算规则灵活支持中文,易用性更强自定义规则引擎,更加灵活,支持复杂多变的场景插件化的设计,快速接入其它数据能力平台NoSQL

    搜索引擎代码

    它是一款真正意义上的搜索引擎:具有自己的蜘蛛、分词、索引、搜索等全套功能。 而且所有功能全部基于web页面完成,您只需要购买一款支持asp.net的虚拟主机就能完成本程序的部署,网站轻松上线。 本程序具有毫秒级...

    通用报表引擎

    这是一个通用报表引擎,构想完成的功能有: 1、提供给软件开发商一个报表开发中间件。针对c/s平台,用户可以以SDK的方式或Com的方式将其加入到自己的产品中。 针对b/s平台,该中间件通过在应用服务器端嵌入服务以...

    CLIPS:构建专家系统的工具

    该分支的目的是提供一个CLIPS派生的规则引擎,该引擎使用真正的并行RETE处理网络,该网络受益于多核和多核硬件,以改善匹配阶段的整体性能。 执照 与原始版本相比,此fork的所有部分均保持在公共领域的许可。 源自...

    EnableQ在线问卷调查引擎

    作为一款通用的调查问卷管理平台,...当然之选,自然是功能强大,性能与安全并重的EnableQ在线问卷调查引擎,不仅是市场调查,更或是员工满意度调查,EnableQ都是真正的多面手,它帮助您准确了解您的用户和您的员工。

    radar实时风控引擎-其他

    自定义规则引擎,更加灵活,支持复杂多变的场景 插件化的设计,快速接入其它数据能力平台 NoSQL,易扩展,高性能 配置简单,开箱即用! 项目架构 前后端分离架构 后端技术框架: SpringBoot + Mybatis + tkMapper + ...

    E桶金行业搜索引擎系统 1.6.rar

    它是一款真正意义上的搜索引擎:具有自己的蜘蛛、分词、索引、搜索等全套功能。而且所有功能全部基于web页面完成,您只需要购买一款支持asp.net的虚拟主机就能完成本程序的部署,网站轻松上线。本程序具有毫秒级高速...

    ios-XFDialogBuilder可配置型IOS对话框,使用者定制蒙版层背景、窗口大小、UI主题、文本内容、字体大小、布局内容、弹出消失动画引擎.zip

    可配置型IOS对话框,使用者定制蒙版层背景、窗口大小、UI主题、文本内容、字体大小、布局内容、弹出消失动画引擎。 源代码地址(github):https://github.com/yizzuide/XFDialogBuilder XFDialogBuilder框架...

    codesearch:真正理解并遵循代码的源代码搜索引擎-Search source code

    一个代码搜索引擎,实际上可以分析并跟踪代码。 它根据查询查找代码行,然后通过添加代码的依赖项和依存关系来构建完整的代码片段,例如将变量声明和用法保持在一起。 搜索功能名称将显示几个用法示例。 这些代码...

    E桶金行业搜索引擎系统(包含多线程客户端蜘蛛系统) V1.6.rar

    它是一款真正意义上的搜索引擎:具有自己的蜘蛛、分词、索引、搜索等全套功能。 而且所有功能全部基于web页面完成,您只需要购买一款支持asp.net的虚拟主机就能完成本程序的部署,网站轻松上线。 本程序具有毫秒级...

    PHP极速链程序 v2.2011 附伪静态规则.rar

    真正实现无人监控无人操作,让建站和维护变成如此简单. 每次无论任何人从其它站点击到极速链程序一次,就自动给来路页面做一个链接,极速链程序给本站加一个内容。每天定时进行栏目相关内容进行采集。更新内容,时间...

Global site tag (gtag.js) - Google Analytics