当前位置:  开发笔记 > 运维 > 正文

负载均衡器和Solrcloud

如何解决《负载均衡器和Solrcloud》经验,为你挑选了1个好方法。

我想知道如何在SolrCloud之上设置负载均衡器或者不需要负载均衡器?

如果是前者,需要将碎片领导者添加到负载均衡器中?那么如果碎片领导者出于某种原因而改变呢?或者,群集中的所有计算机(包括副本)都可以更好地添加到负载均衡器中?

如果是后者,我猜一个cname需要指向SolrCloud集群,它应该是循环DNS吗?

来自一些实际的Solrcloud操作经验的任何建议都会非常有用.



1> ymonad..:

通常SolrCloud与ZooKeeper结合使用,客户端使用CloudSolrServer访问SolrCloud.

查询将在以下流程中完成.

请注意,我只是部分阅读了Solr的源代码,并且有很多猜测.我读到的也是Solr 4.1的源代码,所以它可能已经过时了.

    ZooKeeper保存IPAddress:Port所有SolrCloud服务器的列表.

    (客户端)CloudSolrServer从ZooKeeper检索服务器列表的实例.

    (客户端)实例CloudSolrServer 随机选择一个SolrCloud服务器并向其发送查询.(也是 LBHttpSolrServer在循环中选择服务器?)

    (服务器端)收到查询的SolrCloud服务器从服务器列表中随机选择碎片副本(每个碎片一个服务器),并将查询重定向到它.(请注意,所有SolrCloud服务器都包含可从ZooKeeper接收的服务器列表)

更新将以与上述相同的方式完成,但也将填充到所有服务器.

请注意,对于SolrCloud,领导者和副本的差异很小,我们可以向任何服务器发送查询/更新.它会自动重定向到其他服务器.

简而言之,负载均衡在客户端和服务器端完成.所以你不必担心它.

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有