solr搜索技术 系列文章:

solr搜索之入门及原理(一)

solr搜索之demo和集成IKAnalyzer(二)

solr搜索之solrJ语法(三)

solr搜索之mysql导入数据到solr(四)

solr搜索之tomcat运行solr(五)

1      solr简介

solr官方文档:http://wiki.apache.org/solr/DataImportHandler

wKiom1lcVauyy-dbAADbhJJDnfw375.png

 

wKiom1lcVMWj-lsMAABrbrDQXvo669.png

下载地址:http://www.apache.org/dyn/closer.cgi/lucene/solr/

2      solr入门

我们使用的是:solr4.10.2,下载zip压缩包,解压到指定目录下

wKioL1lcVdCihncRAAAEcJr-Q94599.png

解压:

wKiom1lcVdrgO4xpAAC2bQPiQSk009.png

 

2.1    solr安装  

1,将解压的solr-4.10.2/文件夹复制到D盘下;

2,进入:D:\solr-4.10.2\example 目录下

3,运行cmd(在D:\solr-4.10.2\example目录下)

wKiom1lcVefDvksUAAAGW0MwaAA202.png

4,执行命令:java –jar start.jar

wKiom1lcVfHT4nISAACIPYShWrg012.png

 

5,打开浏览器,访问:http://localhost:8983/solr/

wKioL1lcVfvjAMgrAADT72_i3GY135.png

6,solr安装成功!

 

2.2    导入数据

solr安装完成后是没有数据的,需要导入一些数据进去方便我们学习。

 

运行--cmd--cd d:\solr-4.10.2\example\exampledocs

wKiom1lcVgfS-9t1AACU4clObHE532.png

 

 

再输入命令:java –jar post.jar solr.xml monitor.xml

执行命令:java –jarpost.jar solr.xml monitor.xml  执行post.jar 给定两个参数配置文件:solr.xmlmonitor.xml

wKiom1lcVi-RbdYCAAAodNvhLgM007.png

 

solr浏览器中查看是否已经导入成功:

wKiom1lcVjvg_6W2AAEuTOgGzAg762.png

OK

 

3      solr详解

查看浏览器solr界面:

wKioL1lcVkzQzYPUAAEnvTlaUPE594.png

Dashboard(仪表板):显示solr运行状态的信息。

Logging: solr运行相关日志信息

Core Adminsolrcore管理,类似于数据库,可以创建多个,用于保存数据,配置等。

Java properties:java 相关运行参数

Thread Dump: 线程副本,可以看出当前线程运行情况!可以帮助排查线上问题。

面试题:使用java开发项目,linux发布上线后,项目正常运行一段时间后,发现java进程存活,没有日志信息输出。怎么排查问题?答案:查看java虚拟机当前线程情况,可能程序卡在了某个线程上面,比如:死锁等。

3.1    示例example目录简介

wKiom1lcVlbwyQmqAACtHQnRPa4070.png

进入solr/目录:

wKioL1lcVmyxb_iIAAAu7jb2J64323.png

collection1就是我们导入的数据。进入collection1/

wKioL1lcVnagMmh-AADe4-3P6q4541.png

3.2    core管理

solr中的Core Admin相当于mysql中的各个数据库,可以创建多个。

Coresolr中最为重要的一个概念,一个solr应用可以部署多个core

每个core里面包含2个目录,confdata,用于存放配置文件和数据。

Core的核心配置文件有2个,solrconfig.xmlschema.xml,分别用于solr的配置以及数据格式定义。

wKiom1lcVp-S3rPLAADe4-3P6q4229.png

Core Selector:core选择器

wKioL1lcVqnScpeEAACtjceB0tk674.png

collection1 core数据界面:

wKiom1lcVrXzZ_EqAACf9COl4N4015.png

 

3.3    solr默认的web容器

dos命令:java –jar start.jar会启动默认的容器:jetty

Jetty 是一个开源的servlet容器,它为基于Javaweb容器,例如JSPservlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接。

 

jetty适合开发小应用,不适合生产环境使用。

 

3.4    配置solr域名访问

配置host:

wKioL1lcVsTgTpHUAAAEnCNs4UA241.png

配置nginx:

wKiom1lcVtaAyRIrAAA6giTrW2U189.png

访问:http://solr.demo.com/solr

wKiom1lcVuLRFv5fAACcSG7o_g4339.png

更改solr配置,可以直接用域名访问:

更改:D:\solr-4.10.2\example\contexts\solr-jetty-context.xml配置文件

wKioL1lcVv7DokG7AABURGiScpc881.png

重新启动solr
http://solr.demo.com/访问:

wKiom1lcVwnRNBrGAACbtiIkQyU749.png


solr搜索技术 系列文章:

solr搜索之入门及原理(一)

solr搜索之demo和集成IKAnalyzer(二)

solr搜索之solrJ语法(三)

solr搜索之mysql导入数据到solr(四)

solr搜索之tomcat运行solr(五)