我在Jena TDB和Jena的内存三重存储中运行查询,无论是在单核计算机上还是在具有16个CPU的计算机上。我观察到16Cores机器Jena产生了许多线程来处理查询和推理操作。
所以我想知道Jena默认情况下并行吗?或者有没有办法强迫或避免平行?
答案 0 :(得分:1)
不,Jena本身使用最小的并行性。特别地,查询引擎在其设计和实现中完全不并行。 Jena可能会自己为每个查询生成一个额外的线程,以便能够监视并终止查询,如果它超过了超时但这将取决于应用程序配置。
你遗漏了很多关于你设置的细节,但我假设你使用Fuseki作为测试的服务器?
Fuseki使用Jetty Web服务器框架,该框架本身具有内置的并行性,能够为多个请求提供服务。因此,您观察到的并行性可能只是Web服务器并行性的副作用。如果您要并行向服务器发送多个请求,那么您将在服务器端看到并行请求处理。