国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Solr學習筆記(一)

2019-11-14 21:17:09
字體:
來源:轉載
供稿:網友
Solr學習筆記(一)

最近準備為一個產品做一個站內的搜索引擎,是一個java產品。由于原來做過Lucene.net,所以自然而然的就想到了使用Lucene。在復習Lucene的過程中發現了Solr這個和Lucene綁定在一起的Apache的子項目,發現這個搜索服務器正是我們想要的。原來我們做Lucene,會把索引和搜索都放在同一個網站下,也就是在網站啟動的時候,或定時在網站應用程序中進行Lucene的初始化和索引,并使用Lucene搜索API提供搜索服務。這個過程,應用網站既提供了搜索內容的提供者(從數據庫或文件提取數據給Lucene索引),也是搜索內容的索引者,又是用戶搜索服務的結果提供者。這很明顯是不夠理想的,特別是在分布式集群部署環境下。Solr的出現,正好幫助我們解決了這個問題。單一的搜索服務被獨立出來,提供數據的索引和搜索,并且這個搜索服務可以方便的為多個應用進行服務。余下的就是把搜索內容提供者也分離出來,形成一個或多個獨立的服務。這樣服務于服務之間的耦合就降低了,業務和功能的變化,都可以在某一個角色服務中處理,而不需要影響其他的服務。最重要的,Solr可以提供基于Http和xml的Web API,使它可以跨平臺和語言進行服務。集群和分布式部署也變的更容易、風險更低,并且會更有針對性。新的搜索架構就會變成下圖這樣:

image

solr的安裝

首先我們先來安裝solr。安裝solr比較簡單。我的安裝是在windows環境下進行,tomcat7 + solr 10.1。

1. 在網上下載solr的安裝包,解壓縮文件。

2. 找到solr.war文件,把文件復制到tomcat的webapps文件夾下,在這之前如果你的tomcat是運行著的,則先要停止運行。

3. 把example/resources/log4j.PRoperties 復制到$CATALINA_HOME/lib/ 目錄下。

4. 然后把下載包中的solr-4.x.0/example/solr 文件夾復制到你希望存儲的本地文件夾D:/solr下,這個文件夾會作為solr索引文件的存放目錄:$SOLR_HOME。

5. 運行tomcat。把下載的文件example/lib/ext目錄下的所有jar包復制到tomcat的webapps目錄下的solr/WEB-INF/lib文件夾下。

6. 配置$SOLR_HOME。還是在tomcat的webapps/solr/WEB-INF目錄下,找到web.xml文件,放開<env-entry>節點,配置上$SOLR_HOME,如下:

    <env-entry>       <env-entry-name>solr/home</env-entry-name>       <env-entry-value>d:/solr</env-entry-value>       <env-entry-type>java.lang.String</env-entry-type>    </env-entry>

完成上述步驟以后,重新啟動tomcat,訪問http://localhost:8080/solr/確認是否配置正常。

image

添加Document

solr安裝好以后,我們需要測試solr是否可以正確運行。solr的搜索是基于文檔的,沒有文檔,solr什么也搜索不到。所以我們現在就要嘗試著添加文檔。在solr的下載包里面有一些用于測試的文檔,在example/exampledocs文件夾下。另外在這個文件夾下還有一個基于java命令行的測試工具post.jar,我們將使用這些文檔和工具來作為測試。

使用命令 java -Durl=http://localhost:8080/solr/update -jar post.jar *.xml 把文件夾下所有的xml文件上傳到solr上去,并索引。這樣添加Document的工作就算完成。

image

查找Document

經過上一步的添加,14個document已經被索引到solr服務器中,我們就可以進行查詢了。在瀏覽器中輸入http://localhost:8080/solr/select?q=video,服務器將會返回一個xml文檔,<result>標簽下有多個<doc>標簽,每一個<doc>就是被搜索到的和查詢參數有關的document。如下圖:

image

至此,solr已經安裝成功,下一篇將介紹solr的相關基本概念。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴义市| 长顺县| 成都市| 英山县| 桐柏县| 张家界市| 永善县| 开江县| 绿春县| 尉犁县| 垫江县| 大庆市| 丹江口市| 邳州市| 京山县| 井冈山市| 莒南县| 宁明县| 武功县| 白河县| 厦门市| 鹤峰县| 福贡县| 罗定市| 锡林浩特市| 临沂市| 西乡县| 南雄市| 湖南省| 大连市| 河南省| 延庆县| 南充市| 岢岚县| 安庆市| 西华县| 许昌市| 宣恩县| 丹阳市| 临安市| 宾川县|