我正在研究分析传感器数据的多客户端基于Web的应用程序,并应使用规则引擎根据此数据调用操作。 此应用程序的每个客户端都有一组环境传感器(10s - 100s)和一组要在每次传感器值更改(将传感器值复制到数据库中)时进行评估的规则。 一套基本的规则通常会被不同的客户端重复使用,但是每个客户端的规则都是单独参数化的(例如时间依赖),每个客户端都有不同数量的传感器和规则,可以单独配置。有些规则甚至可能只针对单个客户。多客户端Web应用程序的Drools是否可行?
我相信drools可能是这样一个实现的不错选择 - 使用drools guvnor来管理每个客户端的规则。每个客户都有自己的知识库和规则执行会话。
我不知道这样的环境是否会扩展,以及是否有基准或真实世界的例子,其中有人已经使用drools这种情况。
我能找到的大多数基准都是通过对越来越多的事实执行规则来评估不同的规则引擎。在我的方案中事实的数量将相对稳定(每个客户端),而可扩展性将受限于客户端的数量以及许多知识库和会话的并发应用。
有关此可扩展性问题的基准测试或规则引擎比较的任何评论值得欢迎。我也很乐意听到有关每个客户都有自己的规则和数据集的实际实现。