首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Solr各个版本的差异

Solr各个版本的差异

作者头像
物流IT圈
发布2019-07-16 10:50:59
2.6K0
发布2019-07-16 10:50:59
举报
文章被收录于专栏:物流IT圈物流IT圈

构建搜索引擎常用的方式目前主要有两种:一是solr,一是ES。我这里推荐solr,如果你还要加上大数据的一些特性,建议使用ES。

Solr 是一种可供企业使用的、基于 Lucene 的搜索服务器,它支持层面搜索、命中醒目显示和多种输出格式。随着 Google 和类似的复杂搜索引擎的出现,用户希望得到高质量的搜索结果,帮助他们快速、轻易地找到所需的信息。

BOSS对旗下的在线购物站点抱有很高的期望,要求它能够提供一个可伸缩、高度可用且易于维护的搜索解决方案,并且安装这个解决方案不应太昂贵。对于牛B如我的技术宅而言,只是希望事业进步,让老板和客户满意,以及保持头脑清醒。

使用 Apache Solr 可以满足这些要求,它是一种开放源码的、基于 Lucene Java 的搜索服务器,易于加入到 Web 应用程序中。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。您可以坚持使用 Solr 的表现优异的基本搜索功能,也可以对它进行扩展从而满足企业的需要。Solr 还拥有一个活跃的开发者群体,如有需要,可以随时向他们寻求帮助。

Solr 的历史

Solr 最初由 CNET Networks 开发,2006 年初,Apache Software Foundation 在 Lucene 顶级项目的支持下得到了 Solr。Solr 于 2007 年 1 月酝酿成熟,在整个项目孵化期间,Solr 稳步地积累各种特性并吸引了一个稳定的用户群体、贡献者和提交人。Solr 现在是 Lucene(Apache 的基于 Java 的全文本搜索引擎库)的一个子项目。

Solr版本更新很快,网上找的教程都是基于老版本,新手入坑要先了解各个版本的差异:

4.x~5.x的变化

4.x的安装方式,会分发成一个war包部署在任何Servlet容器上,这是大家都熟知的方式,在我看来未免繁琐了一点。

或许官方也感觉繁琐了,于是5.x有个最大的改变。现在的Solr是一个(Standalone)独立的服务器,怎么个Standalone法呢?

从solr5.0开始,Solr不再分发成一个war包以部署在任何Servlet容器上。现在的Solr作为一个单独的Java应用服务器分发,包括在Unix或者Windows平台上使用的启动和停止脚本,以及一个安装脚本来设置生产环境下的Solr安装,在*nix平台上通过/etc/init.d来管理。【*nix----Unix】

在内部,Solr仍然通过Servlet API实现,并由Jetty提供支持--但是这仅仅是实现细节的一个例子。作为一个“webapp”部署在其它Servlet容器(或者其它Jetty的实例)是不支持的,同时当有额外的变化时可能会在内部对Solr进行调整以利用自定义网络堆栈功能导致在未来5.x版本中不工作。

以后新版本就不需要转移到Tomcat上了,或许大家不死心,但是目前的新版本都是不推荐的,即使你转移成功了,后面也可能麻烦不断,你再精通,你能比得上官方吗?老弟啊,没毛病,是时候放手了。

5.x 6.x 7.x 的安装

都是差不多一样的流程。

去官网下载需要的安装包(zip,tgz)

解压

启动  bin/solr start

访问  http://localhost:8983/solr/

5.x 6.x 7.x 的目录结构

bin目录:

solr and solr.cmd,一个是Unix一个是windows的控制脚本。

solr.in.sh and solr.in.cmd,一个是Unix,一个是windows的属性文件,此处配置Java,Jetty和Solr的系统级别属性。当使用bin/solr/时bin/solr.cmd,这些设置可以被覆盖,这允许您在一个地方设置所有的属性。

install_solr_services.sh,此脚本用于Unix系统将Solr作为服务安装。

DIST

该目录包含主要的Solr .jar文件。

Server

Solr管理界面 (server/solr-webapp)

Jetty libraries (server/lib)

日志文件 (server/logs)

日志配置 (server/resources).

configsets示例 (server/solr/configsets)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 驼马精英 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档