规则业务规则引擎-选型标准、产品对比分析

规则引擎  时间:2021-02-25  阅读:()

业务规则引擎

--选型标准、产品对比分析摘 要文章阐述业务规则引擎产品选型标准,罗列各种开源产品,且对各种产品

特点展开详细分析.最后列举两个选型实例

关键字选型标准业务规则引擎JRulesQuickRulesJessBlaze Advisor,Droo l s1 Java规则引擎选型标准

业务规则引擎产品选型需考虑以下因素

1 规则引擎对中文的支持。

2 产品的历史和应用行业背景。

3 规则引擎处理性能。

4 规则引擎资源要求。

5 规则引擎是否支持JSR94标准。

6 规则引擎是否支持J2EE架构。

7 规则引擎是否支持XML。

8 规则语言的开放性和可扩展性。

9 规则库的开放性和可扩展性。

10 规则库的版本控制。

11 规则库的存储灵活性。

12 产品在开发中的灵活性。

13 产品在开发中的灵活性。

14 规则引擎对We b的支持。

15 规则引擎在部署中的方便性和灵活性。

2 Java规则引擎商业产品

Java规则引擎商业产品主要有

3 Java规则引擎开源项目

开源项目的实现主要包括

Drools规则引擎应用Rete算法的改进形式Rete-I I算法。从内部机制上讲它使用了和Forgy的算法相同的概念和方法但是增加了可与面向对象语言无缝连接的节点类型。

Mandarax基于反向推理归纳法。能够较容易地实现多个数据源的集成。例如数据库记录能方便地集成为事实集(facts sets)  reflection用来集成对象模型中的功能。目前不支持JSR94。

OFBiz Rule Engine支持归纳法(Backward chaining).最初代码基于Steven JohnMetsker的“Bui lding Parsers inJava”不支持JSR 94。

JLisa是用来构建业务规则的强大框架它有着扩展了LISP优秀特色的优点比Cl ips还要强大.这些特色对于多范例软件的开发是至关重要的.支持JSR94。

其它的开源项目实现有诸如AlgernonTyRuBa JTP JEOPS InfoSapientRDFExpertJena 2 Euler JLog Pel let OWL Reasoner Prova OpenRules SweetRules JShop2等等。

4主流Java规则引擎产品特点分析

4.1 ILOG公司及其产品特点

ILOG是著名的软件跨国公司 ILOG是一家创建于1987年主要以提供企业级类库(C++、Java和.Net)组件及其相关软件咨询服务为主的软件开发商。她在美国纳斯达克和欧洲Eu ro Next同时挂牌上市 目前客户多达2000多家遍布30多个国家和地区。公司的总部设在法国巴黎。根据IDC的报告早在1998年起 ILOG就已经成为世界上“最大的软件组件开发商”。 ILOG在2004财务年的销售收入首次超过1亿美金其中很大的一部分业绩来自业务规则管理系统如ILOG JRules的产品销售和与之相关的专业咨询服务。

ILOG在软件产品开发方面积累了十几年的经验推出市场的产品前后有40多种。产品的升级换代非常规范并紧跟技术发展的步伐。 以规则引擎产品为例 ILOG是最早从事规则引擎研发的公司之一最早的规则引擎产品是C++的ILOG Rules它具有十多年的历史目前版本已升级到7.2。 ILOG的JRules汲取了它C++版的优点如性能高在Java的平台做了拓展成为目前全球最著名的业务规则管理系统。与此同时 ILOG也提供了.NET版本的业务规则管理系统 目前的版本为2.0。

ILOG是全球最大的BRMS厂商业务规则管理系统BRMS是ILOG系列产品中非常重要的一组产品。 IDC在2004年的市场研究分析报告中December2004, IDC#32392,Volume:1,Tab:Markets指出 ILOG是BRMS市场的最大开发商它占据2003年BRMS市场的29%的份额高据第一位。

ILOG是真正进入中国的BRMS厂商在2002年中 ILOG把中国的办事处从香港迁到北京。 目前中国的雇员分布在北京上海广州等地直接为中国客户提供本地化的技术支持和服务。 ILOG的JRules产品和文档也同步实现了汉化并提供中国国内的热线电话服务使中国的客户可以更容易接触和使用ILOG的产品。

ILOG的产品有着鲜明的构件化特性和开放性遵循国际行业标准如XML J2EE JSPJSR94等标准产品性能高容易使用、容易整合和扩展……。这些特点多少和ILOG本身是一家专业的软件组件开发商有些渊源。 Gartner在2004年的市场研究文件DecisionFramework, DF-22-2693 J. Sinur中对ILOG产品的评价是 “ILOG提供了第一个驻留在执行环境之外的规则库机制……当用户的执行环境变得越来越复杂的时候就越需要强大的规则库机制的支持。 ILOG的规则库机制是开放和可扩展的这也意味着规则可以被集中的管理并可以灵活部署到整个企业的不同应用中”。

4.2 YASU Technologies公司及其产品特点

YASU Technologies公司成立于1999年是一个业务规则管理(BRM)技术应用软件、系统、服务及解决方案供应商。公司提供创新的跨平台业务规则管理软件及系统其中QuickRules BRMS是YASU的旗舰产品它被广泛应用在众多行业中。

YASU Technologies同样为客户提供优质的技术服务使客户们能更好的掌握业务规则技术及设计方法。

4. 3 Sandia Labs公司及其产品特点

Sandia Labs公司的Jess非常小巧、灵活并且是已知规则引擎中最快的。核心Jess语言与CLIPS依然兼容许多Jess脚本也是有效的CLIPS脚本。与CLIPS一样 Jess使用Rete运算法则来处理规则。 Rete是一个非常高效的算法用于解决复杂、艰深的多对多匹配问题。在CLIPS的基础上 Jess添加了许多特性后向链表、运行内存查询以及操作和直接推理Java对象的能力。 Jess同时也是一个强有力的Java脚本环境。通过它你能够创建Java对象、调用Java方法而无需编译任何Java代码。

4.4 Fair Issac公司及其产品特点

Fair Issac也是一家BRMS软件开发商。总部设在美国的Minnesota州 目前公司的定位逐渐向企业决策管理方向倾斜。它在BRMS上的旗舰产品是BlazeAdvisor。

Blaze Advisor的历史比较复杂。最早是属于Neuron Data Inc公司 1999年被更名为现在的名字Blaze。 Neuron Data Inc在2000年上半年纳斯达克泡沫时期上市挂牌同年9月被Brokat Technology以5.5亿美元收购。不到一年 即2001年八月 Blaze Advisor又以区区2千万美元被HNC Software收购。 2002年HNC又被目前的Fair Issac收购。从Blaze Advisor的发展历史来看它不像ILOG JRules这么幸运总是在不同的公司之间被转手。

BlazeAdvisor是一个套装软件针对的应用领域比ILOGJRules狭窄。 ILOGJRules除了涵盖Blaze Advisor所针对的诸如保险、卫生、银行等几个特点领域外还大量应用在电信、政府、供应链管理等领域。套装软件有它的优势如行业背景较强、二次开发的要求较低、在特点行业的应用较成熟。但是在中国套装软件也有严重的不足之处如本地化程度低本地技术支持要求高、成本高、不容易与其他体系结构应用整合、扩展和定制能力较低。

4.5开源Drools的特点

JBoss Rules Drools 具有一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎符合业内标准速度快、效率高。业务分析师或审核人员可以利用它轻松查看业务规则从而检验是否已编码的规则执行了所需的业务规则。

Drools是用Java语言编写的开放源码规则引擎使用Rete算法对所编写的规则求值。Drools允许使用声明方式表达业务逻辑。可以使用Java/XML语法编写规则这对于入门Drools十分有用 因为您可以将Java代码直接嵌入规则文件中。还可以使用Groovy/XML语法或Python/XML语法在Drools中编写规则。 Drools还具有其他优点

 非常活跃的社区

 易用

 快速的执行速度

 在Java开发人员中流行

 JSR94兼容JSR94是Java RuleEngineAPI

 免费

4.6开源M a n d a rax的特点

Mandarax是一个规则引擎的纯Java实现。它支持多类型的事实和基于反映的规则数据库 EJB等等支持XML标准(RuleML 0.8)。它提供了一个兼容J2EE的使用反向链接的接口引擎。与Drools类似 Mandarax也有如下优点

 非常活跃的社区

 易用

 快速的执行速度

 在Java开发人员中流行

 免费

但是Mandarax不支持JSR94规范。

4. 7 ILOGJrules的特点

选型实例

经过对以上特点的对比分析国内选择应用ILOG JRules分角色分析如下系统设计师

应用设计师对业务规则应用的开发起着至关重要的作用。他们的主要目标是为应用及其关联的数据流创建行之有效且高效率的整体结构。 ILOG JRules 5.0为系统设计师提供了一整套可应用于各种不同应用架构的灵活架构元素。以下各部分从系统设计师的角度介绍这些组件。错误未找到引用源。 图1显示了各元素之间的关系。

业务分析人员

在典型的项目中业务分析人员起着桥梁作用他们负责对将要自动执行的流程进行完全面向业务的描述使之与项目的技术规范相衔接。由于传统应用的技术规范中所包含的许多详尽系统功能现已转由策略管理者直接管理因此这种桥梁作用对于现今的业务规则应用尤其重要。分析人员负责创建问题域模型这种模型对策略管理者来说是智能的、有用的 同时支持开发人员进行高效的实施。

通过ILOG JRules 5.0分析人员可以使用以下三个重要工具来实现这种桥梁作用对象模型规范、业务规则语言规范和规则流。此外分析人员通常会设计某些高级业务规则工具供策略管理者以后进行定制。这些工具包括规则模板、决策表和决策树。以下几节将详细介绍

业务规则应用开发人员

通常对于实施应用的固定元素的平台开发人员将负责编写相应的代码。不过对于业务规则应用开发人员的工作还包括一些新的任务

 与分析人员协作构建业务对象模型。

 在交付给策略管理者之前完成业务规则的编写、测试和调试尤其在应用开发的

早期阶段。

 整合利用业务规则实施的可变业务逻辑。这通常包括

o 基于上下文收集适用的规则o 收集规则必须处理的数据o 调用本地或远程规则引擎o 整合数据处理结果与业务规则 以处理固定逻辑

 构建或扩展和定制业务规则编写工具

为了有效地执行这些任务开发人员要求工具不仅能够与现有的开发方法一起使用还可以用于测试和调试业务规则。为此 ILOG JRules 5.0提供了基于ILOG JRules Builder的一整套开发工具以及全面的应用编程接口 (API) 用于集成业务规则和应用并构建基于ILOGJRules Builder或ILOG Web Builder的定制业务规则编写工具。

结合以上特点分析选择DROOL做经一步分析

Ø我的应用程序有多复杂?

对于那些只是把数据从数据库中传入传出并不做更多事情的应用程序最好不要使用规则引擎。但是 当在Java中有一定量的商业逻辑处理的话可以考虑Drools的使用。这是因为很多应用随着时间的推移越来越复杂而Drools可以让你更轻松应对这一切。

Ø我的应用的生命周期有多久

如果我们应用的生命周期很短也没有必要使用Drools使用规则引擎将会在中长期得到好处。

Ø我的应用需要改变吗

这个答案一般情况下是肯定的 “这世界唯一不变的只有变化” 我们需求也是这样的无论是在开发过程中或是在开发完成以后 Drools能从频繁变化的需求中获得好处。

Megalayer(159元 )年付CN2优化带宽VPS

Megalayer 商家我们还算是比较熟悉的,商家主要业务方向是CN2优化带宽、国际BGP和全向带宽的独立服务器和站群服务器,且后来也有增加云服务器(VPS主机)业务。这次中秋节促销活动期间,有发布促销活动,这次活动力度认为还是比较大的,有提供香港、美国、菲律宾的年付VPS主机,CN2优化方案线路的低至年付159元。这次活动截止到10月30日,如果我们有需要的话可以选择。第一、特价限量年付VPS主...

美国云服务器 1核 1G 30M 50元/季 兆赫云

【双十二】兆赫云:全场vps季付六折优惠,低至50元/季,1H/1G/30M/20G数据盘/500G流量/洛杉矶联通9929商家简介:兆赫云是一家国人商家,成立2020年,主要业务是美西洛杉矶联通9929线路VPS,提供虚拟主机、VPS和独立服务器。VPS采用KVM虚拟架构,线路优质,延迟低,稳定性强。是不是觉得黑五折扣力度不够大?还在犹豫徘徊中?这次为了提前庆祝双十二,特价推出全场季付六折优惠。...

个人网站备案流程及注意事项(内容方向和适用主机商)

如今我们还有在做个人网站吗?随着自媒体和短视频的发展和兴起,包括我们很多WEB2.0产品的延续,当然也包括个人建站市场的低迷和用户关注的不同,有些个人已经不在做网站。但是,由于我们有些朋友出于网站的爱好或者说是有些项目还是基于PC端网站的,还是有网友抱有信心的,比如我们看到有一些老牌个人网站依旧在运行,且还有新网站的出现。今天在这篇文章中谈谈有网友问关于个人网站备案的问题。这个也是前几天有他在选择...

规则引擎为你推荐
视频截图软件怎么在视频中剪切一张图片?用什么软件云播怎么看片云播看不了视频吴晓波频道买粉《吴晓波频道》《罗辑思维》《专栏精粹》怎么评价?依赖注入Spring 的依赖注入是什么意思?伪静态静态与伪静态的区别?镜像文件是什么什么是镜像文件啊如何建立自己的网站如何建立自己的网站直播加速手机上什么软件可以帮助直播加速,大神们推荐推荐怎么上传音乐如何上传音乐防钓鱼游戏中的防钓鱼检查是什么?
外国虚拟主机 虚拟主机软件 ip反查域名 国外域名 泛域名 视频空间租用 域名主机管理系统 域名备案信息查询 kvmla lighttpd qq数据库 gspeed 七夕快乐英文 北京双线 169邮箱 阿里校园 qq云端 服务器干什么用的 免费测手机号 360云服务 更多