我们有一台 64 位的 linux 机器,我们与其他服务建立多个 HTTP 连接,Drools Guvnor 网站(如果你不知道,规则引擎)就是其中之一。在 drools 中,我们为每个被触发的规则创建知识库,并且知识库的创建与 Guvnor 网站建立 HTTP 连接。
所有其他线程都被阻塞,CPU 利用率上升到 ~100%,导致 OOM。我们可以在 15-20 分钟后进行更改以编译规则。但如果有人已经面临这个问题,我想确定这个问题。
我检查了"cat /proc/sys/kernel/threads-max"
它显示27000个线程,这是一个原因吗?
我有几个问题:
- 我们什么时候知道我们的容量已经超出了?
- 可以在内部产生多少线程(任何粗略估计或与差异参数相关的公式都可以)?
- 有没有其他人看到过 Drools 的类似问题?并发访问 Guvnor 网站基本上是导致问题的原因。
谢谢,