Solr全文检索服务器 (一)

Solr全文检索服务器 (一)


  今天给大家分享的是Solr,如有不足,敬请指正。

  那么我们首先要知道Solr是什么,我们都知道我们国内目前很火的某猫,某宝,某东,在这里就用到了Solr检索服务器。百度百科给出的解释是:Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。

一、Solr简介

1.1 Solr是什么

  • Solr是一个基于全文检索的企业级应用服务器。
  • 全文检索:可以输入一段文字,通过分词检索数据!!
  • 应用服务器:它是单独的服务。

1.2 Solr能做什么

  • 它就是用于做全文搜索。

1.3 为什么需要Solr

  • Solr可以独立运行在tomcat容器中,通过http协议,以接口的方式对外提供服务,java代码只需要专注于业务的处理就可以
图示
Solr全文检索服务器 (一)

1.4 Solr下载路径

1.5 Solr目录结构说明

解压后目录
Solr全文检索服务器 (一)
  • bin:solr的运行脚本
  • contrib:solr的一些扩展jar包,用于增强solr的功能。
  • dist:该目录包含build过程中产生的war和jar文件,以及相关的依赖文件。
  • docs:solr的API文档
  • example:solr工程的例子目录:
  • licenses:solr相关的一些许可信息

二、示例

2.1 需求

  • 使用Solr实现网站的商品搜索功能

2.2 配置步骤说明

  1. 配置Solr服务器。
  2. 配置SolrHome。(Solr服务的主目录,磁盘)
  3. 在Solr服务器中加载SolrHome。
  4. java程序访问Solr服务器,实现全文搜索。

2.3 配置Solr服务器

2.3.1 解压一个新的Tomcat,专门用来加载Solr

图示
Solr全文检索服务器 (一)

2.3.2 部署Solr服务到Tomcat中

  • 在Solr的下载包中,提供了Solr的war包程序。(空的war包程序)
图示
Solr全文检索服务器 (一)
  • 拷贝solr.war到Tomcat的webapp目录下。运行tomcat后自动解压为solr文件夹,关闭tomcat删除war包
图示
Solr全文检索服务器 (一)

2.3.3 添加Solr运行依赖的jar包

  • 在Solr的下载包中,提供Solr服务器运行所依赖的jar包。
图示
Solr全文检索服务器 (一)
  1. 拷贝/example/lib/ext下的所有包,到solr应用的lib目录中
图示
Solr全文检索服务器 (一)
  1. 拷贝/example/resource/log4j.properties,到solr应用的classes目录下
  • 前提:先在/WEB-INF/目录下,创建classes目录。(这里需要建立classes文件夹)
    | 图示 |
    | :------------: |
    | Solr全文检索服务器 (一) |

2.4 配置SolrHome

2.4.1

  • Solr的下载包中,提供了标准的SolrHome配置,拷贝到本地,修改名称为SolrHome
图示
Solr全文检索服务器 (一)
Solr全文检索服务器 (一)

2.4.2 配置SolrCore

  1. 注:每一个实例都有自己的名称。在core.properties文件中配置
图示
Solr全文检索服务器 (一)
  1. 将core.properties中,将其修改为:jd
  • name=jd
  1. 配置SolrCore所需的jar依赖
  • Solr下载包中,提供SolrCore所需要的所有jar依赖
图示
Solr全文检索服务器 (一)
  1. 在SolrHome同级目录下,创建depJar文件夹
图示
Solr全文检索服务器 (一)
  1. 拷贝contrib、dist两个目录到depJar目录下
图示
Solr全文检索服务器 (一)
  1. 修改/collection1/conf目录下的solrconfig.xml,加载jar包
图示
Solr全文检索服务器 (一)
  1. 配置索引库目录
  • solr是通过标签,来指定索引库的目录的
图示
Solr全文检索服务器 (一)
  • 默认路径是在SolrCore目录下,跟conf目录同级。首次加载时,将自动创建

2.5 在Solr服务器中加载SolrHome

2.5.1 修改web.xml加载SolrHome

图示
Solr全文检索服务器 (一)
  • 在这里是通过修改标签(默认是注释起来的),来加载SolrHome
图示
Solr全文检索服务器 (一)

2.5.2 启动Tomcat测试

图示
Solr全文检索服务器 (一)

接下来的创建java程序访问Solr服务器将在下篇文章给出。

版权说明:欢迎以任何方式进行转载,但请在转载后注明出处!