【发布时间】:2010-12-13 17:30:22
【问题描述】:
嘿嘿,
我正在部署一个包含超过 3000 万个文档的 Solr 服务器。目前,我正在测试搜索性能,结果很大程度上取决于我执行的同时查询的数量:
1个同时查询:2516ms
2 个同时查询:4250,4469 毫秒
3 个同时查询:5781、6219、6219 毫秒
4 个同时查询:6484、7203、7719、7781 毫秒 ...
Jetty 线程池默认配置:
新的 class="org.mortbay.thread.BoundedThreadPool"
设置 name="minThreads" 10
设置 name="lowThreads" 50
设置 name="maxThreads" 10000
我想知道是否可以设置任何因素来减少同时请求对响应时间的影响。
Solrconfig 也被配置为默认值,但没有用于测量最坏情况的缓存和 mergeFactor=5(搜索将比更新请求更多)。
提前致谢
【问题讨论】:
-
如果没有关于系统资源(内存、cpu、磁盘)负载的任何详细信息以及有关您正在运行的查询的信息(例如,“:”),很难对此进行分析>" 具有多个方面通常会导致比没有任何方面的简单查询更高的负载。
-
如果你使用合适的硬件,我认为 2516ms 太高了。尝试调整缓存(不要关闭它们)并使用真正的查询(!!)。你使用刻面吗?您是否在使用 newSearchers、预热搜索器等?