EmbeddedSolrServer的使用现在已经过时而不推荐?

我需要在tomcat上运行我的Java webapp以及同一台机器上的数据库添加搜索function。

因为我打算在同一台机器上使用Solr,但应该使用哪种实现? 我认为嵌入式更优选,因为我需要从同一台机器添加数据,因此通过HTTP添加不会有多大意义,不是吗? 而且,将Solr作为单独的Web应用程序运行会比嵌入式应用程序消耗更多资源(不是吗?)。

但是现在不推荐使用EmbeddedSolrServer ,人们如何在需要将Solr与webapp保持在同一台机器上时使用Solr?

您可以将Solr设置为您用于Web应用程序的同一Tomcat中的另一个“Web服务”,进行正确配置并通过HTTP / REST接口使用它。 或者,您也可以使用开箱即用的Jetty容器。 有关如何安装的更多详细信息,请访问: http : //wiki.apache.org/solr/SolrInstall 。

我不相信使用嵌入式solr会消耗(少)资源……如果你真的不想分开东西(应用程序和solr),可能你应该直接看Lucene而不是Solr,因为主要的目标是Solr允许为Lucene创建Web服务接口,可以从任何应用程序访问它(它有几个其他扩展 – http://lucene.apache.org/solr/features.html ,但Solr的核心是Lucene java搜索库)。

您引用的页面可以回答您的问题。 您在自己的JVM中作为服务在同一台机器上运行Solr,并通过HTTP(到localhost)与它进行交互。