Solr 全文檢索服務器(一)

solr


  今天給你們分享的是Solr,若有不足,敬請指正。java

  那麼咱們首先要知道Solr是什麼,咱們都知道咱們國內目前很火的某貓,某寶,某東,在這裏就用到了Solr檢索服務器。百度百科給出的解釋是:Solr是一個獨立的企業級搜索應用服務器,它對外提供相似於Web-service的API接口。用戶能夠經過http請求,向搜索引擎服務器提交必定格式的XML文件,生成索引;也能夠經過Http Get操做提出查找請求,並獲得XML格式的返回結果。web

1、Solr簡介

1.1 Solr是什麼

  • Solr是一個基於全文檢索的企業級應用服務器。
  • 全文檢索:能夠輸入一段文字,經過分詞檢索數據!!
  • 應用服務器:它是單獨的服務。

1.2 Solr能作什麼

  • 它就是用於作全文搜索。

1.3 爲何須要Solr

  • Solr能夠獨立運行在tomcat容器中,經過http協議,以接口的方式對外提供服務,java代碼只須要專一於業務的處理就能夠
圖示

1.4 Solr下載路徑

1.5 Solr目錄結構說明

解壓後目錄
  • bin:solr的運行腳本
  • contrib:solr的一些擴展jar包,用於加強solr的功能。
  • dist:該目錄包含build過程當中產生的war和jar文件,以及相關的依賴文件。
  • docs:solr的API文檔
  • example:solr工程的例子目錄:
  • licenses:solr相關的一些許可信息

2、示例

2.1 需求

  • 使用Solr實現網站的商品搜索功能

2.2 配置步驟說明

  1. 配置Solr服務器。
  2. 配置SolrHome。(Solr服務的主目錄,磁盤)
  3. 在Solr服務器中加載SolrHome。
  4. java程序訪問Solr服務器,實現全文搜索。

2.3 配置Solr服務器

2.3.1 解壓一個新的Tomcat,專門用來加載Solr

圖示

2.3.2 部署Solr服務到Tomcat中

  • 在Solr的下載包中,提供了Solr的war包程序。(空的war包程序)
圖示
  • 拷貝solr.war到Tomcat的webapp目錄下。運行tomcat後自動解壓爲solr文件夾,關閉tomcat刪除war包
圖示

2.3.3 添加Solr運行依賴的jar包

  • 在Solr的下載包中,提供Solr服務器運行所依賴的jar包。
圖示
  1. 拷貝/example/lib/ext下的全部包,到solr應用的lib目錄中
圖示
  1. 拷貝/example/resource/log4j.properties,到solr應用的classes目錄下
  • 前提:先在/WEB-INF/目錄下,建立classes目錄。(這裏須要創建classes文件夾) | 圖示 | | :------------: | | |

2.4 配置SolrHome

2.4.1

  • Solr的下載包中,提供了標準的SolrHome配置,拷貝到本地,修更名稱爲SolrHome
圖示

2.4.2 配置SolrCore

  1. 注:每個實例都有本身的名稱。在core.properties文件中配置
圖示
  1. 將core.properties中,將其修改成:jd
  • name=jd
  1. 配置SolrCore所需的jar依賴
  • Solr下載包中,提供SolrCore所須要的全部jar依賴
圖示
  1. 在SolrHome同級目錄下,建立depJar文件夾
圖示
  1. 拷貝contrib、dist兩個目錄到depJar目錄下
圖示
  1. 修改/collection1/conf目錄下的solrconfig.xml,加載jar包
圖示
  1. 配置索引庫目錄
  • solr是經過<dataDir>標籤,來指定索引庫的目錄的
圖示
  • 默認路徑是在SolrCore目錄下,跟conf目錄同級。首次加載時,將自動建立

2.5 在Solr服務器中加載SolrHome

2.5.1 修改web.xml加載SolrHome

圖示
  • 在這裏是經過修改<env-entry>標籤(默認是註釋起來的),來加載SolrHome
圖示

2.5.2 啓動Tomcat測試

圖示

接下來的建立java程序訪問Solr服務器將在下篇文章給出。apache

版權說明:歡迎以任何方式進行轉載,但請在轉載後註明出處!tomcat

相關文章
相關標籤/搜索