Solr配置了集群,本地有253和254,2个独立的Solr服务。
  同一个页面的图片,刷新2次,图片地址不一样,最后查明,后台数据源Solr1和Solr2的数据不一致。
  
  第1步推测:本地缓存,删除浏览器缓存,用不同的浏览器,问题仍然存在,排除。
  
  第2步推测:代码查询有问题
  根据id查询,出来的Shop的img不一致。
  但是,查询所有findAll,数据是同一个。(这个问题没有找到原因)
  
Iterable<SolrShop> shopList = shopRepository.findAll();
//solr读取当前店铺
SolrShop shop = shopRepository.findOne(id);

代码确实是根据id查询的。

第3步推测:Solr中的数据,有重复的,有2个id一致,但是img不一致的数据。
  从shopList找到8个shop,但是id都是唯一的。
  
  第4步推测:最底层的数据源Solr有多个,果然,最近使用了Solr集群。
把本地的Solr配置solrServerUrl=192.168.1.254:2181,192.168.1.253:2181
改为:solrServerUrl=192.168.1.254:2181
但是,在使用时,仍然不一致。

现在需要解决的问题是,为什么253仍然能正常访问?
最后原因:测试环境的Solr和本地开发,用的是同一套Solr集群。本地配置改了,但是Solr仍然有2个。
打开Log4j的配置,日志级别改为debug。

http://192.168.1.254:8983/solr/#/shop/query
   http://192.168.1.253:8983/solr/#/shop/query   
    分别查询,发现同1个id对应的img不同,问题找到。

问题产生的原因:
第1种可能:第1次增加shop,没有同步到Solr,第2次同步了。不符合此时的情况,因为都有数据了。
第2种可能:更新shop时,只更新了1个Solr,另外1台更新失败。
  
    第2天找到了原因:服务器是Solr集群,某人本地还是单点的,导致数据不同步了。

Solr数据不同步的更多相关文章

  1. Hbase到Solr数据同步及Solr分离实战

    1. 起因 由于历史原因,公司的数据是持久化在HBase中,查询是通过Solr来实现,这这样的设计必然涉及到要把Hbase中的数据实时同步到Solr,但所有的服务都在一个同一个集群及每台机子都安装了很 ...

  2. 一次flume exec source采集日志到kafka因为单条日志数据非常大同步失败的踩坑带来的思考

    本次遇到的问题描述,日志采集同步时,当单条日志(日志文件中一行日志)超过2M大小,数据无法采集同步到kafka,分析后,共踩到如下几个坑.1.flume采集时,通过shell+EXEC(tail -F ...

  3. solr数据操作

    本文介绍solr的基本数据操作,基于solr 8.2.solr支持多种数据格式,包括XML,JSON,CSV等,并提供多种脚本和工具来操作数据.本文讲解curl请求和JSON数据格式的处理方式. 本文 ...

  4. 基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(二)

    我们上一篇<基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(一)>主要讲解了如何搭建一个实时数据通讯服务器,客户端与服务端是如何通讯的,相信通过上一篇的讲解,再配 ...

  5. 基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(一)

    今天没有延续上一篇讲的内容,穿插一段小插曲,WebSocket 实时数据通讯同步的问题,今天我们并不是很纯粹地讲 WebSocket 相关知识,我们通过 WebGL 3D 拓扑图来呈现一个有趣的 De ...

  6. 通过 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(二)

    我们上一篇<基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(一)>主要讲解了如何搭建一个实时数据通讯服务器,客户端与服务端是如何通讯的,相信通过上一篇的讲解,再配 ...

  7. C#串口通信—向串口发送数据,同步接收返回数据

    最近写C#串口通信程序,系统是B/S架构.SerialPort类有一个DataReceived事件,用来接收串口返回的数据,但这种方式在C/S架构下很好用,但B/S就不好处理了.所以写了一个同步模式接 ...

  8. Linux下Rsync+sersync实现数据实时同步

    inotify 的同步备份机制有着缺点,于是看了sersync同步,弥补了rsync的缺点.以下转自:http://www.osyunwei.com/archives/7447.html 前言: 一. ...

  9. solr与.net系列课程(四)solr查询参数的讲解与.net如何获取solr数据

    solr与.net系列课程(四)solr查询参数的讲解与.net如何获取solr数据 上一节我们完成了solr连接数据库,细心的朋友会发现一个问题,就是solr其实和语言没有任何关系,配置完成后任何语 ...

随机推荐

  1. 实例介绍Cocos2d-x中Box2D物理引擎:碰撞检測

    在Box2D中碰撞事件通过实现b2ContactListener类函数实现,b2ContactListener是Box2D提供的抽象类,它的抽象函数:virtual void BeginContact ...

  2. Android 组件ContentProvider

    Android 组件ContentProvider Android的数据存储有五种方式Shared Preferences.网络存储.文件存储.外储存储.SQLite,一般这些存储都仅仅是在单独的一个 ...

  3. IE6、IE7的兼容问题

    通常,网页的兼容问题,就是IE6\IE7的问题.表现为错位.换行,不支持CSS3等. 而其中,错位.换行,原因往往在于没有指明元素的width.height. 一般银瓦不告诉他.

  4. 20170322js面向对象

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. 0502 php-变量、常量

    变 量 1.变量必须以$开头,后面紧跟变量名. 2.注意以下情况: echo  “人民币符合¥像个羊,美元符号$象个钱”;        //“$象个钱”会被识别为变量 3.与js的不同: 不支持“只 ...

  6. ROS-TF-新建坐标系

    前言:在前面的试验中,我们分别有wolrd,turtle1和turtle2三个坐标系,并且world是turtle1和turtle2的父坐标系.现在我们来新建一个自定义坐标系,让turtle2跟着新的 ...

  7. 【转】Postman接口测试之POST、GET请求方法

    转自竹小冉: https://www.cnblogs.com/zhuxr/p/9009708.html 一.基础知识 1.HTTP的五种请求方法:GET, POST ,HEAD,OPTIONS, PU ...

  8. linux下常用命令失效

    注意:修改一下PATH环境变量 export PATH=/bin:/usr/bin/:. 可以把这句话加到你的.profile或者.bash_profile里,这样每次登录的时候都会生效

  9. JavaScript Array 整理 - 元素操作

    整理一下Array对象中针对元素操作的方法. 分别是: concat (组合数组) join(数组转字符串) pop(删除最后一个元素) shift(删除第一个元素) push(在数组尾部添加新元素) ...

  10. [跨域]js设置document.domain实现跨域

    document.domain用来得到当前网页的域名.比如在地址栏里输入: 代码如下: javascript:alert(document.domain); //www.jb51.net 我们也可以给 ...