业务规则引擎(Biztalk)比编写我自己的规则检查器有什么优势?

时间:2015-11-19 16:29:43

标签: biztalk rule-engine business-rules cocor antrl4

我需要在.Net中编写一个应用程序,允许业务客户定义自己的规则。我一直在寻找Biztalk服务器中的Microsoft的BRE(业务规则引擎)。到目前为止我所理解的是,BRE为您提供了一个灵活的规则编写器,用于从.Net实体中拖放drop属性,然后根据某些条件(谓词)断言它。但是,这是非常基本和直接的想法,在我看来,通过定义我自己的域特定语言来编写易于理解的业务规则,可以简单地实现这一点。我所要做的就是使用ANTLR或Coco / R创建一个语法,以及一个可以编写和编译规则的接口,我很高兴。 有人能否说明BRE如何提供更多以及为什么人们应该更喜欢定制解决方案?

1 个答案:

答案 0 :(得分:0)

问题的答案实际上取决于以下因素:

  1. 企业需要:BizTalk是一个集成平台,如果您的企业已经在使用BizTalk,那么编写自己的规则引擎与BRE不应该有任何问题,因为BRE提供了您需要的大部分功能性能,还提供在运行时缓存长期事实的能力(如果需要)。 Business Rule Composer提供简单的规则构建,也可以安装到业务用户以编写规则。在某些复杂场景中,也可以自定义。您可以使用Orchestration或.NET类库在BizTalk中使用这些规则。所以BizTalk是一个很好的规则引擎,具有很大的灵活性。
  2. 如果BizTalk不是您的集成平台,并且您只考虑BRE,那么您需要三思而后行,因为使用BRE本身也需要BizTalk许可证,同时仅使用BizTalk产品进行BRE可能不符合成本效益。你需要考虑的事情。