经过前面一段时间的努力,终于把我所知道的关于solr 的内容都总结完了。前面讲到了solr 的安装配置,web管理后台的使用,solr 的查询参数和查询语法,还说到了solr的客户端 solrnet 的基本用法和Query,Facet,高亮等实际开发中的常用方法。可以说solr的相关的基础的内容,都已经讲到了。 

  但是,总还是觉得,还少点什么,感觉还有很多没有总结到。比如分词,数据导入,索引增量更新,Solr服务器的主从复制等等。确实还有很多内容没有总结到位。

  然而,细想之后,我又发现,对于Solr的实际运用中的各种问题,是总结不完的。每个人碰到的都是不一样。你碰到的问题,有可能大家谁都没有碰到过,你是第一个。所以只有大家相互交流,相互分享,一起探讨解决办法。

  最后讲一讲,实际生产过程中,solr 是如何使用的,Solr整体的架构(但是这也只是个基础的架构,实际情况可能比这个复杂的多)。

  

  说明:

  1. Window索引服务,负责定时增量更新(有人会问为什么不用solr的自动增量更新,我只能说,这是各个项目的选择)。

  2. Search 是一个wcf 或是web api 接口。负责提供索引查询服务。

  3. Solr 服务器集群,按照主从模式。

  索引更新规则:

  1. 这里用的是Windows服务,定时自动执行更新。而不是直接通过数据库更新。(很多人问我,配置Solr 数据库更新,其实不必,实际生产环节,都是通过程序自动更新。很少用solr data import)。

  2. 商品和店铺的索引更新,例如商品上下架,价格修改等,10分钟内增量更新到Solr 索引。

  3. 每天晚上,执行全量更新。保证数据库中的数据,都全部更新到线上索引。

  最后的最后,本人才疏学浅,了解有限,只是把自己知道的写出来,如有不足或不正确之处,欢迎大家批评指正,相互交流。

Solr学习总结(七)Solr搜索引擎的整体架构的更多相关文章

  1. Solr学习之二-Solr基础知识

    一 基本说明 简单来说Solr是基于Lucene的高性能的,开源的Java企业搜索服务器.Solr可以看作一个Web app,运行在tomcat或Jetty这类HTTP服务器上, 底层是一个基于Luc ...

  2. Solr学习笔记(1) —— Solr概述&Solr的安装

    一.概述 使用Solr实现电商网站中商品信息搜索功能,可以根据关键字.分类.价格搜索商品信息,也可以根据价格进行排序. 1.1 实现方法 在一些大型门户网站.电子商务网站等都需要站内搜索功能,使用传统 ...

  3. Solr学习笔记---部署Solr到Tomcat上,可视化界面的介绍和使用,Solr的基本内容介绍,SolrJ的使用

    学习Solr前需要有Lucene的基础 Lucene的一些简单用法:https://www.cnblogs.com/dddyyy/p/9842760.html 1.部署Solr到Tomcat(Wind ...

  4. Solr学习01:Solr基础知识

    一.什么是solr 首先,要了解下Solr是什么,以下是官方的描述. Solr是一个来自Apache Lucence项目,是一个热门开源的企业级搜索平台.为目前世界上相当多的大型互联网站点提供搜索和导 ...

  5. Solr学习笔记(2) —— Solr管理索引库

    一.维护索引 1.1 添加/更新文档 1.2 批量导入数据(使用dataimport) 第一步:把mysql的数据驱动.以及dataimport插件依赖的jar包添加到solrcore(collect ...

  6. Solr学习之四-Solr配置说明之二

    上一篇的配置说明主要是说明solrconfig.xml配置中的查询部分配置,在solr的功能中另外一个重要的功能是建索引,这是提供快速查询的核心. 按照Solr学习之一所述关于搜索引擎的原理中说明了建 ...

  7. 转载自lanceyan: 一致性hash和solr千万级数据分布式搜索引擎中的应用

    一致性hash和solr千万级数据分布式搜索引擎中的应用 互联网创业中大部分人都是草根创业,这个时候没有强劲的服务器,也没有钱去买很昂贵的海量数据库.在这样严峻的条件下,一批又一批的创业者从创业中获得 ...

  8. solr 学习片段

    全文检索技术——Solr 1 主要内容 1.站内搜索技术选型 2.什么是solr Solr和lucene的区别 3.solr服务器的安装及配置 Solr整合tomcat Solr的演示 4.维护索引 ...

  9. Solr学习笔记之5、Component(组件)与Handler(处理器)学习

    Solr学习笔记之5.Component(组件)与Handler(处理器)学习 一.搜索篇 拼写检查(spellCheck) 作用:用来检查用户输入的检索内容是否存在,如果不存在则给它提示出相近或相似 ...

随机推荐

  1. Java中的集合排序

    1. 定义排序 class ComparatorDefault implements Comparator { public int compare(Object arg0, Object arg1) ...

  2. 架构实例之Demo_JSP_JavaBean_Servlet

    架构实例之Demo_JSP_JavaBean_Servlet 1.开发工具和开发环境       开发工具: MyEclipse10,JDK1.6.0_13(32位),Tomcat7.0(32位),m ...

  3. leetcode -- Convert Sorted List to Binary Search Tree

    Given a singly linked list where elements are sorted in ascending order, convert it to a height bala ...

  4. NYOJ 205

    大数取模算法: 这个又不同于幂取模算法,对于几百万位的数字取模,直接的方法是行不通的.最好利用数论的知识 (a*b)%c = ((a%c)*b)%c ;利用这个公式我们只要从n的一次方开始不断计算,乘 ...

  5. Eclipse SVN图标等设置

  6. docker创建镜像

    手动创建: docker run -d -p mynginx:v2 nginx rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest- ...

  7. Python-11-RabbitMQ、Redis使用

    RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. MQ全称为Message Queue, 消息队列(M ...

  8. FineUI小技巧(7)多表头表格导出

    前言 之前我们曾写过一篇文章 FineUI小技巧(3)表格导出与文件下载,对于在 FineUI 中导出表格数据进行了详细描述.今天我们要更进一步,介绍下如何导出多表头表格. 多表头表格的标签定义 在 ...

  9. Linux基本命令(一)

    Linux基本命令 编辑器 vim编译器 Gnu工具链-gcc调试器 GDB操作系统是用C来写的 系统编程 (核心骨架 80%) 文件I/O 文件系统 进程{ 进程控制原语.进程间通信.进程间关系 信 ...

  10. 基于Bootstrap仿淘宝分页控件实现

    .header { cursor: pointer } p { margin: 3px 6px } th { background: lightblue; width: 20% } table { t ...