有状态会话重复加载类 - 导致性能问题

时间:2014-11-12 10:24:59

标签: java multithreading classloader drools

我有一个获取请求的服务器,并使用DROOLS来评估请求。

对于每个传入的请求,我创建一个新的statefull会话,插入事实(可以超过100个事实),触发所有规则并处理会话。

我发现事实的每个插入都会导致drools转到ProjectClassLoader.loadClasss() synchronized并阻塞我的线程(我正在运行带有服务执行程序的可用处理器线程,而这导致性能问题)。

重要的是要说明所有相关事实都是相同的。我们使用多个线程来评估几个与事实具有相同代码的不同请求。我们希望Drools不必一遍又一遍地重新加载这些类。

我们知道如何避免让drools转到每个插入的synchronized loadClass()代码吗?

0 个答案:

没有答案