在没有servlet的桌面应用程序上运行SOLR包含tomcat,Jetty

时间:2014-01-19 01:04:35

标签: solr

我想知道是否有人在没有在应用服务器上运行它的情况下运行Apache SOLR?我正在为Mac和Windows编写JavaFX应用程序,它需要像分面,同义词等搜索功能。我只想知道是否可以像普通的Java应用程序一样直接索引,搜索,删除和更新文档到SOLR? / p>

2 个答案:

答案 0 :(得分:2)

是的,除了@Persimmonium之外,另一种使用Solr的方法是EmbeddedSolr。

http://wiki.apache.org/solr/Solrj#EmbeddedSolrServer

请注意“使用Solr的最简单,最安全的方法是通过Solr的标准HTTP接口。嵌入Solr不太灵活,难以支持,没有经过充分测试,应该保留用于特殊情况。” http://wiki.apache.org/solr/EmbeddedSolr

话虽如此,我已经看到Solr与EmbeddedSolr的实现基于用例,在适用的情况下是合理的。

答案 1 :(得分:0)

Solr现在需要一个servlet容器,没办法,但你可以:

  1. 在嵌入模式下运行jetty / tomcat,在较新版本中这样做很容易。这样你就可以运行一个jvm。
  2. 使用Lucene而不是Solr,Lucene现在有一个faceting模块,你可以使用SynonymFilter等。也许你需要编写更多的代码。