用户登录
用户注册

分享至

ssdb 源码分析

  • 作者: 用户36321392
  • 来源: 51数据库
  • 2020-09-22
solrj针对solrcloud提供了CloudSolrClient,用于对集群环境solr操作,从一个测试例子,一步步深入,看看CloudSolrClient是如何做查询操作的 1、使用CloudSolrClient发起一个查询请求 2、接着调用CloudSolrClient的request方法 3、CloudSolrClien...



  solrj针对solrcloud提供了cloudsolrclient,用于对集群环境solr操作,从一个测试例子,一步步深入,看看cloudsolrclient是如何做查询操作的

1、使用cloudsolrclient发起一个查询请求

2、接着调用cloudsolrclient的request方法

3、cloudsolrclient的request方法中,首先回去获取请求中的collection名字,如果没有,获取默认设置的collcetion,然后调用requestwithretryonstalestate方法

4、requestwithretryonstalestate方法中,先去连接zk获取solrclound注册在zk上的信息

5、获取zk上的信息,经过处理后,封装到request中,调用sendrequest方法

6、在sendrequest中,会获取每个片的每个replicat的url与注册在zk上的live url做一个交集,得到一个查询url集合,然后创建一个lbhttpsolrclient,请求solrcloud

7、lbhttpsolrclient的request中会在for循环中挨个的轮询上一个步骤中放入的urllist发起http查询请求

在rsp合并结果,并返回
软件
前端设计
程序设计
Java相关