gpt4 book ai didi

ruby-on-rails - 在生产中运行 Sunspot

转载 作者:行者123 更新时间:2023-12-03 01:53:21 27 4
gpt4 key购买 nike

我在 Ubuntu 10.4 LTS 和 mongoid 上运行 Rails 3.1。我还通过this guide安装tomcat6和solr 。一切都很好,但我不确定我是否已将其配置为最佳。我在 sunspot.yml 询问中禁用 auto_commit_after_request here .

我还取消了 solrcongif.xml 中自动提交部分的注释。似乎更新索引记录比更新非索引记录需要更长的时间。有什么方法可以检查 auto_commit_after_request 是否真的关闭了?

此外,当我检查 solr 中的分析页面时,已更新的模型似乎被双重索引(我可以看出,因为还没有大量数据)。所以我有一个带有关键字的模型,但在索引中它说有该词的 3 个实例(一个用于创建,两个是我在 mondel 上进行的更新)。这正常吗?看起来这会产生对频繁更新模型的偏见,但也会增加索引的大小。

下面是我的 config/sunspot.yml 文件。如果需要,我也可以发布 solrconfig.xml,但它很大,所以我现在将其保留。有没有关于调整太阳黑子以进行生产的指南?谢谢!

production:
solr:
hostname: localhost
port: 8080
log_level: WARNING
path: '/solr'
auto_commit_after_request: false

development:
solr:
hostname: localhost
port: 8982
log_level: INFO

test:
solr:
hostname: localhost
port: 8981
log_level: WARNING

最佳答案

这里有一大堆问题。

您的大部分性能调整将在 SOlr 上进行,而不是在 Sunspot 上进行,后者只是 Solr 的一个接口(interface)。请参阅http://wiki.apache.org/solr/SolrPerformanceFactors 。正如您所指出的,提交的时间以及是否在后台完成都会影响应用的性能。

Solr (Lucene) 中的更新实际上是通过删除旧对象并再次添加来实现的。这可能是您注意到速度差异的原因。

更新不会将术语多次添加到索引中。你一定在观察别的东西。如果您使用相同的索引进行开发,有时您可能会看到旧的字段名称污染了索引;尝试删除整个索引(磁盘上的实际索引文件夹)并重新开始;

关于ruby-on-rails - 在生产中运行 Sunspot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8024162/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com