热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Solr初探(1)——Solr介绍(基于Solr6.6.2)

一、Solr简介1.1Solr简介Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同

一、Solr简介

1.1 Solr简介

Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

Solr 可以独立运行,运行在JettyTomcat等Servlet容器中。Solr不提供构建UI的功能,Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。

Solr索引的实现方法很简单,用Post方法向Solr服务器发送一个描述Field及其内容的JSON文档,Solr根据JSON文档添加删除更新索引。Solr搜索只需发送Get请求,然后对Solr返回的JSON等格式的查询结果进行解析,组织页面布局。

1.2 Solr与Lucene区别

Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene提供了完整的查询引擎和索引引擎,目的是为开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索引擎。

Solr目标是打造一款企业级的搜索引擎系统,它是一个搜索引擎服务,可以独立运行,通过Solr可以非常快速的构建企业的搜索引擎。


二、Solr安装与配置

2.1 下载Solr

安装Solr前先要安装好JAVATomcat,我使用的版本如下:

  • JDK 1.8

  • Tomcat 8.5

Solr下载地址点击这里,我使用的版本是solr-6.6.2,和《Lucene初探——基于Lucene 6.6.2》这篇文章的版本相对应。

下载完后,解压压缩包,目录结构如下:

名称 介绍
bin Solr的脚本启动目录
contrib 关于solr的第三方扩展
dist Solr的核心JAR包和扩展JAR包
dist/solrj-lib 构建基于Solr的客户端时用到的JAR包
dist/test-framework 包含测试Solr时候用到的JAR包
docs Solr文档
example Solr的简单示例
licenses 许可协议
server 本地运行Solr的必要文件

2.2 搭建Solr后台

Solr自带了一个后台管理,但是不能直接运行,需要进行配置。

在配置前,先说明下我的Tomcat安装位于D:\apache-tomcat-8.5.16,下载的solr源码包名称为solr-6.6.2,后面的步骤使用到的目录请根据个人实际情况进行修改。

Step1:solr-6.6.2\server\solr-webapp下的webapp复制到D:\apache-tomcat-8.5.16\webapps目录下,并改名为solr(名称任意)。

Step2:solr-6.6.2\server\lib\ext的jar包复制到D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF\lib目录下。

Step3:solr-6.6.2\dist下的solr-dataimporthandler-6.6.2.jarsolr-dataimporthandler-extras-6.6.2.jar复制到D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF\lib目录下。

Step4:solr-6.6.2\server\lib下的以metrics开头的5个jar包复制到D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF\lib目录下。

Step5: 配置solr的家目录。在E盘下创建文件夹solrHome(位置名称任意),将solr-6.6.2\server\solr下的所有文件复制到E:\solrHome

Step6:修改solr配置文件。打开D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF下的web.xml,定位到40行,将下面一段注解打开,并修改值为E:/solrHome

Step7:web.xml168行那一大块注释掉,不然访问solr会出现没有授权的错误。

Step8:D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF目录下创建classes文件夹,并将solr-6.6.2\server\resources下的log4j.properties复制过去。

Step9:启动Tomcat,访问http://localhost:8080/solr/index.htm,登陆到Solr后台管理。


推荐阅读
  • 部署solr建立nutch索引
    2019独角兽企业重金招聘Python工程师标准接着上篇nutch1.4的部署应用,我们来部署一下solr,solr是对lucene进行了封装的企 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Tomcat安装与配置教程及常见问题解决方法
    本文介绍了Tomcat的安装与配置教程,包括jdk版本的选择、域名解析、war文件的部署和访问、常见问题的解决方法等。其中涉及到的问题包括403问题、数据库连接问题、1130错误、2003错误、Java Runtime版本不兼容问题以及502错误等。最后还提到了项目的前后端连接代码的配置。通过本文的指导,读者可以顺利完成Tomcat的安装与配置,并解决常见的问题。 ... [详细]
  • 负载均衡_Nginx反向代理动静分离负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第二部分
    nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解 ... [详细]
  • camel_使用Camel在来自不同来源的Solr中索引数据
    camelApacheSolr是建立在Lucene之上的“流行的,快速的开源企业搜索平台”。为了进行搜索(并查找结果),通常需要从不同的源(例如内容管理 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 本文介绍了在使用Python中的aiohttp模块模拟服务器时出现的连接失败问题,并提供了相应的解决方法。文章中详细说明了出错的代码以及相关的软件版本和环境信息,同时也提到了相关的警告信息和函数的替代方案。通过阅读本文,读者可以了解到如何解决Python连接服务器失败的问题,并对aiohttp模块有更深入的了解。 ... [详细]
  • 大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记
    本文介绍了大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记,包括outputFormat接口实现类、自定义outputFormat步骤和案例。案例中将包含nty的日志输出到nty.log文件,其他日志输出到other.log文件。同时提供了一些相关网址供参考。 ... [详细]
  • 本文讨论了在shiro java配置中加入Shiro listener后启动失败的问题。作者引入了一系列jar包,并在web.xml中配置了相关内容,但启动后却无法正常运行。文章提供了具体引入的jar包和web.xml的配置内容,并指出可能的错误原因。该问题可能与jar包版本不兼容、web.xml配置错误等有关。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • 本文介绍了禅道作为一款国产开源免费的测试管理工具的特点和功能,并提供了禅道的搭建和调试方法。禅道是一款B/S结构的项目管理工具,可以实现组织管理、后台管理、产品管理、项目管理和测试管理等功能。同时,本文还介绍了其他软件测试相关工具,如功能自动化工具和性能自动化工具,以及白盒测试工具的使用。通过本文的阅读,读者可以了解禅道的基本使用方法和优势,从而更好地进行测试管理工作。 ... [详细]
  • Lucene系列四:Lucene提供的分词器、IKAnalyze中文分词器集成、扩展 IKAnalyzer的停用词和新词
    一、Lucene提供的分词器StandardAnalyzer和SmartChineseAnalyzer1.新建一个测试Lucene提供的分词器的maven项目LuceneAnal ... [详细]
author-avatar
红山村樵夫_799
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有