day73_淘淘商城專案_06_solr索引庫搭建 + solr搜尋功能實現 + 圖片顯示等問題解決_匠心筆記
課程計劃
- 第六天:
- 1、搜尋工程的搭建
- 2、linux下solr服務的搭建
- 3、測試使用solrJ管理索引庫
- 4、把商品資料匯入到索引庫中(後臺功能)
- 5、商品搜尋功能實現(前臺功能)
1、搜尋工程的搭建
要實現搜尋功能,需要
搭建solr服務
、搜尋服務工程
、搜尋系統(表現層的工程)
1.1、Solr服務搭建
1.1.1、solr的環境
solr是java開發的。
solr的安裝檔案。
推薦在Linux環境下使用Solr,需要安裝環境Linux。
需要安裝jdk。參考連結:https://www.cnblogs.com/chenmingjun/p/9931593.html
需要安裝tomcat。
1.1.2、solr的搭建步驟
第一步:使用SecureCRT的SFTP功能,把solr-4.10.3.tgz.tgz
的壓縮包上傳到Linux系統。
第二步:解壓縮solr
後,刪除該安裝包。
[[email protected] ~]# tar -zxvf solr-4.10.3.tgz.tgz
......
......
[[email protected] ~]# ll
總用量 146496
drwxr-xr-x. 8 root root 218 11月 20 17:07 solr-4.10.3
-rw-r--r--. 1 root root 150010621 9月 26 23:16 solr-4.10.3.tgz.tgz
[[email protected] ~]# rm -rf solr-4.10.3.tgz.tgz
[[email protected] ~]# ll
總用量 0
drwxr-xr-x. 8 root root 218 11月 20 17:07 solr-4.10.3
[[email protected] ~]#
第三步:使用SecureCRT的SFTP功能,把apache-tomcat-7.0.47.tar.gz
的壓縮包上傳到Linux系統,解壓後刪除安裝包。
[[email protected] ~]# tar -zxvf apache-tomcat-7 .0.47.tar.gz
[[email protected] ~]# # rm -rf apache-tomcat-7.0.47.tar.gz
第四步:建立solr存放的目錄
,複製apache-tomcat-7.0.47目錄
到/usr/local/solr/tomcat目錄
下
[[email protected] ~]# mkdir /usr/local/solr
[[email protected] ~]# cp -r apache-tomcat-7.0.47/ /usr/local/solr/tomcat
第五步:把solr-4.10.3/dist/solr-4.10.3.war檔案
部署(複製)到tomcat
目錄下,並重新命名為solr.war
。
[[email protected] ~]# cp solr-4.10.3/dist/solr-4.10.3.war /usr/local/solr/tomcat/webapps/solr.war
注意:複製目錄(資料夾)的時候需要加-r
,複製檔案的時候不需要加-r
。
第六步:解壓縮solr.war包
。啟動tomcat即可自動解壓war包
,並檢視tomcat啟動日誌
。
[[email protected] ~]# cd /usr/local/solr/tomcat/bin/
[[email protected] bin]# ./startup.sh
Using CATALINA_BASE: /usr/local/solr/tomcat
Using CATALINA_HOME: /usr/local/solr/tomcat
Using CATALINA_TMPDIR: /usr/local/solr/tomcat/temp
Using JRE_HOME: /usr/local/java/jdk1.7.0_80/jre
Using CLASSPATH: /usr/local/solr/tomcat/bin/bootstrap.jar:/usr/local/solr/tomcat/bin/tomcat-juli.jar
[[email protected] bin]# cd ..
[[email protected] tomcat]# tail -f logs/catalina.out
十一月 20, 2018 5:23:24 下午 org.apache.catalina.startup.HostConfig deployDirectory
資訊: Deploying web application directory /usr/local/solr/tomcat/webapps/host-manager
十一月 20, 2018 5:23:25 下午 org.apache.catalina.startup.HostConfig deployDirectory
資訊: Deploying web application directory /usr/local/solr/tomcat/webapps/manager
十一月 20, 2018 5:23:25 下午 org.apache.coyote.AbstractProtocol start
資訊: Starting ProtocolHandler ["http-bio-8080"]
十一月 20, 2018 5:23:25 下午 org.apache.coyote.AbstractProtocol start
資訊: Starting ProtocolHandler ["ajp-bio-8009"]
十一月 20, 2018 5:23:25 下午 org.apache.catalina.startup.Catalina start
資訊: Server startup in 11144 ms
第六步:關閉tomcat後,刪除掉沒用的solr.war包
。原則:沒用的東西及時刪掉。
注意:要是想刪掉沒用的solr.war
包,必須在關閉tomcat的情況
下,否則解壓縮後的solr包也會一併刪除掉。
[[email protected] tomcat]# bin/shutdown.sh
Using CATALINA_BASE: /usr/local/solr/tomcat
Using CATALINA_HOME: /usr/local/solr/tomcat
Using CATALINA_TMPDIR: /usr/local/solr/tomcat/temp
Using JRE_HOME: /usr/local/java/jdk1.7.0_80/jre
Using CLASSPATH: /usr/local/solr/tomcat/bin/bootstrap.jar:/usr/local/solr/tomcat/bin/tomcat-juli.jar
[[email protected] tomcat]# rm -rf webapps/solr.war
第七步:想要啟動solr工程
,還需要新增solr的擴充套件服務包
。
把/root/solr-4.10.3/example/lib/ext
目錄下的所有的jar包,新增到solr工程
中。
[[email protected] ext]# pwd
/root/solr-4.10.3/example/lib/ext
[[email protected] ext]# cp * /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
第八步:建立一個solrhome
目錄。
我們知道:/root/solr-4.10.3/example/solr
目錄就是一個solrhome
目錄。
複製此目錄中所有內容到/usr/local/solr/solrhome
目錄下
[[email protected] example]# pwd
/root/solr-4.10.3/example
[[email protected] example]# cp -r solr /usr/local/solr/solrhome
第九步:關聯solr工程
及solrhome
。需要修改solr工程
的web.xml
檔案。
[[email protected] ~]# cd /usr/local/solr/tomcat/webapps/solr/WEB-INF/
[[email protected] WEB-INF]# vim web.xml
修改如下圖所示:
第九步:再次啟動
tomcat
[[email protected] ~]# cd /usr/local/solr/tomcat/
[[email protected] tomcat]# bin/startup.sh
第十步:修改防火牆配置
CentOS 7.X 預設的防火牆不是iptables,而是firewalld。我們可以試一下systemctl stop firewalld關閉防火牆,但是不推薦該方式。
CentOS 6.X 是iptables,可以使用vim /etc/sysconfig/iptables
修改配置即可。
本博主的是CentOS7,防火牆使用的是firewalld,我們使用命令的方式來新增埠(修改後需要重啟firewalld服務):
[[email protected] ~]# cd /etc/firewalld/zones/
[[email protected] zones]# firewall-cmd --permanent --add-port=8080/tcp
success
[[email protected] zones]# service firewalld restart
Redirecting to /bin/systemctl restart firewalld.service
[[email protected] zones]#
第十一步:測試連線
訪問地址:http://192.168.25.154:8080/solr/
其實和在windows下的配置完全一樣。
瀏覽器介面如下:
點選按鈕“collection1”
1.1.3、solr的使用
新增文件時必須有id域
,其他域必須在solr的schema.xml
中進行定義。
1.2、配置業務域
1.2.1、在schema.xml中需要定義以下欄位
1、商品id(根據id查詢商品描述頁)
2、商品標題title
3、商品賣點sell_point
4、商品價格price
5、商品圖片image
6、分類名稱category_name(不是分類id,我們一般不會根據商品分類id去查詢商品,而是根據商品分類名稱去查)
7、商品描述item_desc(實際開發中不需要搜尋商品描述)
一共涉及到三張表:tb_item、item_cat、item_desc。
建立對應的業務域。同時需要指定中文分析器。
1.2.2、建立業務域步驟
第一步:把中文分析器新增到solr工程中。
0、把資料夾IK Analyzer 2012FF_hf1
上傳至linux中。
1、把IKAnalyzer2012FF_u1.jar
拷貝到solr工程的lib目錄
下。
2、把擴充套件詞詞典
、停用詞字典
、配置檔案
拷貝到solr工程的WEB-INF/classes
目錄下。(沒有classes目錄就先建立該目錄)
[[email protected] IK Analyzer 2012FF_hf1]# pwd
/root/IK Analyzer 2012FF_hf1
[[email protected] IK Analyzer 2012FF_hf1]# cp IKAnalyzer2012FF_u1.jar /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
[[email protected] IK Analyzer 2012FF_hf1]# mkdir /usr/local/solr/tomcat/webapps/solr/WEB-INF/classes
[[email protected] IK Analyzer 2012FF_hf1]# cp mydict.dic ext_stopword.dic IKAnalyzer.cfg.xml /usr/local/solr/tomcat/webapps/solr/WEB-INF/classes
[[email protected] IK Analyzer 2012FF_hf1]# ll /usr/local/solr/tomcat/webapps/solr/WEB-INF/classes
總用量 12
-rw-r--r--. 1 root root 168 11月 20 19:29 ext_stopword.dic
-rw-r--r--. 1 root root 419 11月 20 19:29 IKAnalyzer.cfg.xml
-rw-r--r--. 1 root root 34 11月 20 19:29 mydict.dic
[[email protected] IK Analyzer 2012FF_hf1]#
第二步:配置一個自定義的fieldType
,使用指定的中文分詞器IKAnalyzer
。
修改solr工程下的schema.xml
檔案,在檔案末尾新增一個自定義的fieldType
,注意:要在標籤<schema></schema>
裡面新增。
[[email protected] conf]# pwd
/usr/local/solr/solrhome/collection1/conf
[[email protected] conf]# vim schema.xml
新增內容如下:
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
第三步:配置業務域,type指定使用自定義的fieldType。
設定業務系統的field
<schema>
......
......
<
相關推薦
day73_淘淘商城專案_06_solr索引庫搭建 + solr搜尋功能實現 + 圖片顯示等問題解決_匠心筆記
課程計劃
第六天:
1、搜尋工程的搭建
2、linux下solr服務的搭建
3、測試使用solrJ管理索引庫
4、把商品資料匯入到索引庫中(後臺功能)
5、商品搜尋功能實現(前臺功能)
1、搜尋工程的搭建
要實現搜尋功能,需要搭建solr服務、搜尋服務工程、搜尋系統(表
day73_淘淘商城專案_06_搜尋工程的搭建 + linux下solr索引庫的搭建 + 把商品資料匯入到索引庫中(後臺) + 商品搜尋功能實現(前臺) + 圖片顯示等問題解決_匠心筆記
淘淘商城專案_06
1、搜尋工程的搭建
1.1、Solr服務搭建
1.1.1、solr的環境
1.1.2、solr的搭建步驟
1.1.3、solr的使用
1.2、配置
day69_淘淘商城專案_02_dubbo介紹 + dubbo框架整合 + zookeeper + 商品列表查詢實現 + 分頁 + 逆向工程_匠心筆記
淘淘商城專案_02
1、功能分析
1.1、後臺系統所用的技術
1.2、建立資料庫
1.3、Mybatis逆向工程
1.4、系統間通訊問題
1.4.1、分析
淘淘商城專案_同步索引庫問題分析 + ActiveMQ介紹/安裝/使用 + ActiveMQ整合spring + 使用ActiveMQ實現新增商品後同步索引庫_匠心筆記
文章目錄
1、同步索引庫問題分析
2、ActiveM的介紹
2.1、什麼是ActiveMQ
2.2、ActiveMQ的訊息形式
3、ActiveMQ的安裝
3.1、安裝環境
3.2、安裝步驟
day75_淘淘商城專案_08_同步索引庫問題分析 + ActiveMQ介紹/安裝/使用 + ActiveMQ整合spring + 使用ActiveMQ實現新增商品後同步索引庫_匠心筆記
淘淘商城專案_08
1、同步索引庫問題分析
2、ActiveM的介紹
2.1、什麼是ActiveMQ
2.2、ActiveMQ的訊息形式
3、ActiveMQ的安裝
3.1、安裝環
day74_淘淘商城專案_07_solrcloud搭建 + zookeeper叢集搭建 + 搜尋功能切換到叢集版 + httpclient學習 + 全域性異常處理器 + 附錄_匠心筆記
課程計劃
1、solr叢集的搭建
2、使用solrJ管理solr叢集
3、把搜尋功能切換到solr叢集版
4、httpclient
5、全域性異常處理
1、什麼是SolrCloud
SolrCloud(solr 雲)是Solr提供的分散式搜尋
day79_淘淘商城專案_12_購物車流程 + 商城購物車系統的搭建 + 商城購物車系統的實現分析 + 購物車實現增刪改查_匠心筆記
課程計劃
1、購物車的流程
2、購物車的實現
a) 登入狀態下的購物車實現
b) 未登入狀態下的購物車實現
1、購物車流程
1.1、以前的購物車流程
使用者將商品新增到購物車時,判斷使用者是否登入,如果已經登入將購物車放入se
day81_淘淘商城專案_14_專案釋出 + Linux下安裝mysql + tomcat熱部署 + 資料庫分庫分表 + Mycat學習_匠心筆記
第十四天:
1、Linux上mysql的安裝
2、系統的部署
3、mycat的介紹
4、專案總結
5、面試中的問題
1、開發流程淺解
2、專案釋出前的準備
1、測試 a) 本地單元測試 b) 測試環境測試(1,2,3,4,5) c) 使用
day82_淘淘商城_15_專案的總結 + 專案中的問題_匠心筆記
專案的總結
第一天:
學習電商行業的背景,電商模式:B2B、B2C、B2B2C、O2O。分散式,叢集的理解,系統的架構,基於SSO的架構。使用Maven搭建後臺工程,及SVN的使用。
第二天:
dubbo的學習和使用,系統和系統之間通訊的中介軟體。webservice :系統之間通訊。應
day82_淘淘商城專案_15_專案總結 + 專案中的問題_匠心筆記
專案總結
第一天 1、電商行業的背景,b2b、b2c、b2b2c、c2c、o2o2。 2、系統的架構。基於SOA的架構。 3、工程搭建。使用maven管理工程。 4、svn的使用。
第二天 1、ssm框架整合。 2、使用dubbo進行通訊 1)服務提供者 2)服務消費者
day81_淘淘商城專案_14_專案釋出 + Linux下安裝mysql + tomcat熱部署 + 反向代理的配置 + 資料庫分庫分表 + Mycat學習_匠心筆記
淘淘商城專案_14
1、開發流程淺解
2、專案釋出前的準備
3、專案部署
3.1、Linux下安裝mysql
3.2、專案架構講解
3.3、系統功能介紹
3.4、網路拓撲圖
3.5
day80_淘淘商城專案_13_訂單系統搭建 + 展示訂單確認頁面 + 使用者身份認證(SpringMVC攔截器) + 實現提交訂單功能_匠心筆記
淘淘商城專案_13
1、訂單系統搭建
1.1、功能分析
1.2、工程搭建
1.2.1、建立訂單服務層工程
1.2.2、建立訂單表現層工程
2、展示訂單確認頁面
day79_淘淘商城專案_12_購物車流程 + 商城購物車系統的搭建 + 商城購物車系統的實現分析(cookie+redis方案) + 購物車實現增刪改查_匠心筆記
淘淘商城專案_12
1、購物車流程
1.1、以前的購物車流程
1.2、現在的購物車流程
2、商城購物車系統的搭建
2.1、購物車系統的架構
2.2、服務層工程搭建
day78_淘淘商城專案_11_實現SSO系統的登入註冊功能 + 門戶首頁展示使用者名稱 + ajax請求跨域問題詳解_匠心筆記
淘淘商城專案_11
1、服務介面實現
1.1、檢查資料是否可用介面開發
1.1.1、功能分析
1.1.2、Dao
1.1.3、Service
1.1.4、釋出服務
day77_淘淘商城專案_10_ Linux下的Nginx代理詳解(配置虛擬主機+實現反向代理+實現負載均衡+高可用) + 單點登入系統工程搭建 + SSO系統介面文件講解_匠心筆記
淘淘商城專案_10
1、目前訪問系統使用的方式存在的問題
2、什麼是nginx
3、nginx的應用場景
4、nginx的安裝
4.1、要求的安裝環境
4.2、安裝步驟
4.3、啟動nginx
day76_淘淘商城專案_09_商品詳情頁動態展示實現(jsp+redis) + FreeMarker模板引擎入門 + 商品詳情頁靜態化實現(Win版本的nginx作http伺服器)_匠心筆記
淘淘商城專案_09
1、商品詳情頁面展示,動態展示(jsp + redis)
1.1、工程搭建
1.1.1、pom檔案
1.1.2、框架整合
1.1.3、springmvc.xml
day74_淘淘商城專案_07_ zookeeper叢集搭建 + solrcloud叢集搭建 + 搜尋功能切換到叢集版 + httpclient學習 + 全域性異常處理器 + 附錄_匠心筆記
淘淘商城專案_07
1、什麼是SolrCloud
2、Solr叢集的系統架構
2.1、SolrCloud的物理結構
2.2、SolrCloud的邏輯結構
2.2.1、Collection
day72_淘淘商城專案_05_首頁輪播圖顯示實現 + redis的安裝及使用 + redis叢集環境搭建 + redis實現快取 + 快取同步_匠心筆記
淘淘商城專案_05
1、首頁輪播圖的展示
1.1、功能分析
1.2、Dao層
1.3、Service層
1.3.1、釋出服務
1.4、表現層
1.
day71_淘淘商城專案_04_入口網站介紹 + 商城首頁搭建 + CMS內容管理系統的建立 + CMS內容管理系統的實現_匠心筆記
淘淘商城專案_04
1、門戶(前臺)系統的搭建
1.1、什麼是門戶系統
1.2、系統架構
1.3、搭建taotao-portal-web工程
1.3.1、建立Maven工程
1.3
day70_淘淘商城專案_03_商品類目選擇 + 圖片上傳 + 圖片伺服器FastDFS + 富文字編輯器KindEditor + 新增商品_匠心筆記
淘淘商城專案_03
1、商品類目選擇
1.1、功能分析
1.1.1、資料庫表結構設計
1.1.2、前端頁面分析
1.2、服務層工程開發
1.2.1、Dao