Multi-Tenancy 环境中的 Solr

标签 solr

我正在考虑在 Multi-Tenancy 应用程序中使用 Solr,我想知道是否有任何最佳实践或需要注意的事项?

一个特别的问题是每个租户拥有一个 Solr Core 是否有意义。有大量的 Solr 核心有什么问题吗?
我正在考虑为每个租户使用一个核心,因为我可以分别保护每个核心。

谢谢

最佳答案

Solr 核心对于 Multi-Tenancy 来说是一个很好的主意,特别是因为它们可以在运行时进行管理(因此不需要重新启动服务器)。拥有多个 Solr 内核时,您不应该遇到太多性能问题,但要注意一个内核的性能会受到其他内核上的工作的影响 - 它们可能会共享同一个磁盘。

我可以理解为什么您可能想要提供直接的 API 访问权限 - 例如,如果每个“用户”是一个 Drupal 站点或类似站点,对于共享托管类型的环境。最好的办法是保护不同的 URL,例如如果您有/solr/admin/cores、/solr/client1 用于客户端核心,而/solr/client2 用于另一个,您将拥有三种不同的身份验证,一种用于管理员,一种用于租户。这是在容器(Jetty、Tomcat 等)中完成的,看看一般的 Solr Security 页面:http://wiki.apache.org/solr/SolrSecurity - 您需要以相同的方式为每个路径设置基本访问登录。

关于 Multi-Tenancy 环境中的 Solr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2509421/

相关文章:

Solr 和 Zookeeper 具有单个节点

solr - 使用 Solr 和 Tika 索引 PDF 内容

apache - 本地主机 :8080/solr/browse gives a lazy loading error

solr - 在 Ecom 应用程序中实现 SOLR 的最佳实践是什么?

ubuntu - 无法连接到 127.0.0.1 :8983; Connection refused'

带有双引号的实体查询中的 Solr 错误

solr - 是否有一种简单的方法可以让 Solr 根据随请求提交的一组凭据引用不同的索引?

solr - 在 Solr 中自定义分析器

solr - 在solr中查询具有不同字段的多个集合

solr - QueryResponse (SolrJ 5.0.0) 将 ClassCastException 从 String 返回到 NamedList for spellcheck.collat​​ion=true