使用捆绑的太阳黑子宝石在生产环境中设置solr是否有任何缺点?
我一般都喜欢tomcat solr的想法,但设置起来比较复杂.
太阳黑子捆绑宝石很容易.如果我们有3个阶段的1个rails项目(分段,生产,QA),2个app服务器和1个db / solr服务器,则必须:
>将rails项目推送到数据库服务器
>在生产环境中使用bundle exec rake sunspot在db服务器上启动solr:solr:start for(我们只为每个solr实例使用不同的端口)
>用耙太阳黑子重新索引:solr:reindex
>修改应用服务器的sunspot.yml,使它们连接到特定阶段端口上的数据库服务器
以上适用于生产/分段solrs的X实例.
Tomcat6太阳黑子不是那么容易,时间/结果有效.据我了解(修复我),我必须:
>在db服务器上安装和维护tomcat
>假设我们想拥有3个solr实例 – 使用单独的solrs部署3个solr war(或者使用很难设置的多核solr)
>将rails项目部署到数据库服务器上
>每次我们更改架构/配置/在rails中的任何内容 – 我们必须处理生成solr xmls和confs并将其复制到tomcat webapps
>修改solr conf / xml中的目录,使其指向索引文件等.
>在每个rails上重新加载tomcat solr应用程序实例,部署包括一些脚本和部署程序的“非rails”方法:)
据我所知,如果您拥有相对“平坦”的数据,太阳黑子的效果最好(仅限),最好只需要为单个模型定义要使用的字段.当您需要将多个模型组合到一个文档中进行构面时,就很难了. (但由于我没有使用太阳黑子,我无法确切地说出来).您可以(并且应该)仍然使用rsolr gem与Solr进行通信.但是如果你在开发中使用太阳黑子,它最有可能为你工作.
有关tomcat事物的详细信息:
>在db服务器上安装和维护tomcat
是的,有些工作但可以处理
>假设我们想拥有3个solr实例 – 使用单独的solrs部署3个solr war(或者使用很难设置的多核solr)
我用过多核心.设置起来并不困难.无论如何,你最好还是学习一下Solr配置.多核的最大部分只有两个子目录,其中包含基本相同的XML配置文件集.
>将rails项目部署到数据库服务器上
反正必须这样做:)
>每次我们更改架构/配置/在rails中的任何内容 – 我们必须处理生成solr xmls和confs并将其复制到tomcat webapps
是的,写几个脚本.或者你可以有一个包含tomcat / solr文件夹和Rails项目文件夹或符号链接这些文件夹的git repo.我还没有找到一个好的解决方案,不得不偶尔复制一些东西.
>修改solr conf / xml中的目录,使其指向索引文件等.
是的,一些符号链接可以帮助保持简单
>在每个rails上重新加载tomcat solr应用程序实例,部署包括一些脚本和部署程序的“非rails”方法:)
仅当部署实际更改与您的搜索相关的任何内容时.有一些脚本.有Rails部署解决方案可以提供帮助,但由于我不介意手动做一些事情,我没有打扰安装.
总而言之,我认为我对Solr的配置有更多的控制和洞察力,并且可以更好地使用其中一些更复杂的功能,例如具有层次结构的方面.事实上Solr起初可能看起来有点复杂,但经过一段时间后你会进入它然后它成为一个很好的工具.
总结以上是内存溢出为你收集整理的ruby-on-rails – 生产中的Solr全文搜索 – 这是更好的太阳黑子:solr捆绑解决方案还是独立的tomcat solr?全部内容,希望文章能够帮你解决ruby-on-rails – 生产中的Solr全文搜索 – 这是更好的太阳黑子:solr捆绑解决方案还是独立的tomcat solr?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)