当前位置: 首页 > 知识库问答 >
问题:

将Drools与Java应用程序集成

施令雪
2023-03-14

我第一次尝试Drools/Guvnor,我们计划在Guvnor中进行规则创作,编译、构建并将包下载到“规则包目录”。

现在我遇到的问题是,将Drools与我们的Java应用程序集成的最佳方式是什么?选项1)构建知识代理并开始将事实插入内存以在我们的应用程序中进行规则评估。在这种情况下,Drools引擎使用与应用程序JVM相同的JVM。选项2)拥有一个构建知识代理的Drools Server,应用程序可以将请求发送到Drools Server以使用REST API进行规则评估。规则将在不同于应用程序JVM的JVM中执行。

我还想知道,上述选项之间的性能(在执行时间方面)有什么不同?

你能告诉我我的想法是否正确吗?

-斯里兰卡

共有1个答案

程亦
2023-03-14

我已经测试了你的两种可能性,并没有发现性能上的差异,但我的测试只有几个规则,我并没有真正做压力测试。我不知道执行时间是否合适。

我使用的实际上是两种选择的混合体:我在同一个JVM中执行所有操作,构建知识库(需要几秒钟)并将事实插入内存以触发规则。

无论哪种方式,您的方向都是正确的:)

 类似资料:
  • 我们正在开发一个应用程序,将使用CPLEX解决一个工业问题。开发了一个数学模型(文件)。我们希望直接使用该模型,而不是使用CPLEX Java API重新转录。 在我们的架构中,我们有一个专门用于检索业务数据和创建合适的文件的应用程序。原始模型和这些数据文件应发送到安装在单独机器上的CPLEX实例。 问题是允许加载和运行文件的OPLJavaAPI不提供任何API来使用远程CPLEX实例。另一方面,

  • 我有一个web应用程序,它通过applet进行文件传输。 出于更安全的原因,我计划对应用程序发送的文件进行加密。为此,我希望集成java web start程序,我将把RSA加密逻辑编写为web start jar的一部分。 我已经创建了一个单独的Web启动项目(WAR),并且能够启动jar 我的web start项目组件包括: 主类-加密。java(加密逻辑) 我用主类文件创建了一个签名jar,

  • 问题内容: 我正在开发Java Web应用程序(ERP系统)。我已经完成了基本流程。现在,根据我的客户要求,我们需要实现一些搜索选项。(即员工,用户,发票,库存等), 我正计划为此实现一个搜索引擎。我觉得 elasticsearch 是我搜索的不错选择(如果有其他好的选择,请建议我)。 请给我建议一些好的文档,说明如何将 Elastic search 与java( Spring + Hiberna

  • 我创建了一个Spring Boot应用程序,它使用Spring数据JPA Hibernate提供程序。这个应用程序使用spring jpa存储库为我的数据库提供了基本的crud操作。创建了一个服务类,以使用存储库接口访问数据库。 现在的问题是我想从另一个非Spring制作的独立java应用程序调用这些数据库操作。我想在此应用程序中调用Spring Boot存储库,而不是使用应用程序中使用的JDBC

  • 问题内容: 我有一个棘手的情况:我正在构建一个完整的流星功能的应用程序。但是出于自动化原因,我还需要将某些功能公开为REST服务(第三方应用程序应该能够通过REST插入和接收数据)。 express.js-package似乎是将REST- Endpoint构建到node.js环境中的一个非常可靠的选择,但是我想知道如何将该终结点集成到流星中。 我想要的是例如通过来访问“常规”站点,同时又能够通过来

  • 问题内容: 我是Django的新手,而Ajax的新手。我正在一个需要将两者整合的项目中。我相信我理解它们背后的原理,但是并没有找到对两者的良好解释。 有人可以给我快速解释一下如何将两者集成在一起来更改代码库吗? 例如,我仍然可以将Ajax与一起使用,还是必须随着Ajax的使用而改变我的回答?如果是这样,请您举例说明如何更改请求的响应?如果有什么不同,我返回的数据是JSON。 问题答案: 即使这不完