gpt4 book ai didi

Java Spring如何设置多核Solr配置

转载 作者:行者123 更新时间:2023-12-02 03:33:55 24 4
gpt4 key购买 nike

基本上,我从 http://docs.spring.io/spring-data/solr/docs/1.0.x/reference/html/solr.repositories.html 复制粘贴了多核配置。然后稍微调整了一下,但是不起作用,因为我需要将 corename-SolrClient 添加到 ClientFactory 中。但我是否会突然创建 SolrCLient?我希望它全部与我机器上的服务器上运行的内核相匹配。这是 solr 的配置类:

private static final String PROPERTY_NAME_SOLR_SERVER_URL = "solr.host";


@Resource
private Environment environment;

@Bean
public SolrClientFactory solrClientFactory() {
MulticoreSolrClientFactory factory = new MulticoreSolrClientFactory(
new HttpSolrClient(environment.getRequiredProperty(
PROPERTY_NAME_SOLR_SERVER_URL) ));
return factory;
}

@Bean (name = "SolrTemplateMap")
public Map<Language, SolrTemplate> solrTemplateList(){
HashMap<Language, SolrTemplate> map = new HashMap<>();
for (Language l : Language.values()){
SolrTemplate template = new SolrTemplate (solrClientFactory());
template.setSolrCore(l.toString());
map.put( l, template);
}
return map;
}

我尝试添加

for (Language l : Language.values()){
factory.addSolrClientForCore(new HttpSolrClient(url + "/solr/" + l.toString()), l.toString());
}

在工厂bean中,但是它没有解决任何问题。 Language 是一个枚举。

最佳答案

回复晚了,不确定这是否对您有好处,但我希望它至少对某人有帮助。像这样的事情让我开始工作。

  @Bean (name = "SolrTemplateMap")
public Map<Language, SolrTemplate> solrTemplateList(){
HashMap<Language, SolrTemplate> map = new HashMap<>();
for (Language l : Language.values()){
SolrTemplate template = new SolrTemplate (configureHttpSolrServer(l));
map.put( l, template);
}
return map;
}

private SolrServer configureHttpSolrServer(String baseURL) {
HttpSolrServerFactoryBean factoryBean = new HttpSolrServerFactoryBean();
factoryBean.setUrl(baseURL);
factoryBean.setMaxConnections(100);
return factoryBean;
}

关于Java Spring如何设置多核Solr配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37697251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com