3

我将 Solr 的一个实例部署到带有 tomcat 的 ubuntu 机器上。然后我有一个单线程客户端程序来读取数据并将其注入 Solr。我正在观察内存和 cpu 的使用情况,并意识到我仍然有很多资源(在内存和 CPU 方面)可以使用。我想知道是否应该将索引代码更改为多线程以注入 Solr?用目前的单线程程序索引2000万条数据,大约需要14个小时。这就是为什么我想知道我是否应该改为使用多线程。提前感谢您的建议和帮助!:)

4

1 回答 1

3

Solr 中的多线程索引被广泛使用。如果您还可以从源代码中进行多线程读取,那么您所说的并不是很清楚,但我认为这是要走的路。我建议您尝试一下,但首先尝试分析您的代码并查看代码的哪一部分最慢并将其包含在多线程中。

还要留意你的提交策略。

来自 Solr 文档:(http://wiki.apache.org/solr/SolrPerformanceFactors)“一般来说,每个更新请求添加多个文档比每个更新请求一个要快。......减少自动提交的频率或禁用它们“

于 2013-05-15T11:31:43.210 回答