solr - 在 URL 中指定分片时,应该将分布式请求发送到哪个 SOLR 服务器?
问题描述
我正在 SOLR 中使用分片设置分布式搜索。
我应该将此请求发送到哪个服务器?还是没关系?
主机1 :8983/solr/core?q= : &shards=host1:8983/solr/core,host2:8983/solr/core
对比
主机2 :8983/solr/core?q= : &shards=host1:8983/solr/core,host2:8983/solr/core
同样,拥有一个单独的空 solr 服务器来引导这些搜索而不是使用其中一个分片会更好吗?
解决方案
除非您看到性能问题,否则我不会太担心这两者之间的性能差异。无论如何,查询将在两台服务器上运行,它只是负责将最终结果合并到客户端的不同服务器。如果您想在两台服务器上分散此负载,那很好 - 在这种情况下,我会以循环方式在两者之间进行交替(例如,通过在前面放置一个 HTTP 负载平衡器或让您的 Solr 库负载平衡)可用的服务器)。
如果您开始将副本混入其中,则变得更加困难,负载均衡器将很有用。在这种情况下,在云模式下查看 Solr 可能是一个好主意,Solr 将透明地为您处理所有这些(负载平衡和副本平衡,只要您的库支持 Zookeeper)。
推荐阅读
- linker - 网站注册号以电话号码链接的形式出现,有没有办法逃脱?
- python - Selenium 的 XPath 问题
- python - 除了在 OpenCV (Python) 中作为坐标提供的多边形之外的遮光图像
- sql - 访问 - 选择从一对多表中返回“一”的查询
- reactjs - 从 react-redux、Parent vs Child 组件中使用 connect() 的首选方式是什么?
- swift - SpriteKit - 如何修复节点动画中的失真?
- xml - 如何使用带有约束的 DOM 针对 XSD 验证 XML?
- spring-data-mongodb - mongodb 的 querydsl 是否支持 $text (full text) 搜索?(使用带有spring数据mongodb的querydsl)
- r - R中自动一张一张选择图像文件的功能
- javascript - 这里的 setState 回调语法有什么区别?