业务规则引擎
--选型标准、产品对比分析摘 要文章阐述业务规则引擎产品选型标准,罗列各种开源产品,且对各种产品
特点展开详细分析.最后列举两个选型实例
关键字选型标准业务规则引擎JRulesQuickRulesJessBlaze 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。
其它的开源项目实现有诸如AlgernonTyRuBa JTP JEOPS InfoSapientRDFExpertJena 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 JSPJSR94等标准产品性能高容易使用、容易整合和扩展……。这些特点多少和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能从频繁变化的需求中获得好处。
ZJI是成立于2011年原Wordpress圈知名主机商—维翔主机,2018年9月更名为ZJI,主要提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。本月商家针对香港阿里云线路独立服务器提供月付立减270-400元优惠码,优惠后香港独立服务器(阿里云专线)E3或者E5 CPU,SSD硬盘,最低每月仅480元起。阿里一型CPU:Intel E5-2630L...
星梦云怎么样?星梦云资质齐全,IDC/ISP均有,从星梦云这边租的服务器均可以备案,属于一手资源,高防机柜、大带宽、高防IP业务,一手整C IP段,四川电信,星梦云专注四川高防服务器,成都服务器,雅安服务器。星梦云目前夏日云服务器促销,四川100G高防4H4G10M月付仅60元;西南高防月付特价活动,续费同价,买到就是赚到!点击进入:星梦云官方网站地址1、成都电信年中活动机(成都电信优化线路,封锁...
819云互联 在本月发布了一个购买香港,日本独立服务器的活动,相对之前的首月活动性价比更高,最多只能享受1个月的活动 续费价格恢复原价 是有些颇高 这次819云互联与机房是合作伙伴 本次拿到机房 活动7天内购买独立服务器后期的长期续费价格 加大力度 确实来说这次的就可以买年付或者更长时间了…本次是5个机房可供选择,独立服务器最低默认是50M带宽,不限制流量,。官网:https://ww...