Drools工作台:使用Kie Server Java客户端API创建多个kie会话

时间:2019-07-08 13:24:07

标签: drools drools-kie-workbench

我正在使用集成了Kie执行服务器的 Drools Workbench 7.17 。我在工作台中创建了一个项目,并将该项目部署在kie执行服务器上。

我已经在项目设置中配置了kie-base和kie-session 。将有状态的kie-session定义为KieSession。我正在使用Kie Server Java客户端API将事实插入引擎。

我能够在KieSession上进行查找。我将接收不同用户的数据,并且我要为每个用户创建和维护单独的会话。为现有用户插入事实后,我应该能够重新加载与该用户相关联的kie-session

使用drools工作台和kie执行服务器,我有什么方法可以实现这一目标?我在kie服务器文档中找不到任何示例来使用kie服务器java客户端api创建新会话。

谢谢。

1 个答案:

答案 0 :(得分:1)

在这种情况下,每次拨打电话都会创建一个新会话。在kie服务器中不维护有状态会话。

您有3个解决方案:

1)为此开发了一个kie-server扩展,但是很难集群化(您将不得不序列化kie会话)

2)使用drools的java API在客户端上运行规则。

3)制定规则,以使规则执行生成的数据包含计算状态,以便用初始数据+规则生成的所有回调回调流口水相当于为客户端会话保留有状态会话。 Drools可以快速插入数据。但是现在,一切都取决于插入的数据量。几千没什么。

致谢