问题
之前为新项目整合spring-boot-starter-data-elasticsearch包时抛出了下面的错误:
availableProcessors is already set to [8], rejecting [8]
重新看了配置信息没有发现配置上面出现了什么问题,于是上网去搜解决方案。
按照网上的说法是spring-boot-starter-data-elasticsearch在autoconfiguration中采用了一个参数与Netty发生冲突,建议修改成如下写法:
@Configuration
public class EsConfig {
/**
* 这是应为data-elasticsearch中与Netty之间产生冲突
*/
@PostConstruct
void init() {
System.setProperty("es.set.netty.runtime.available.processors", "false");
}
}
结论
这是由于新项目中使用了WebFlux组件,该组件是基于Netty来实现异步的,这个恰恰与data-elasticsearch冲突了,所以这里只需要修改一下系统参数就可以了。
本文讲述了在整合Spring Boot starter-data-elasticsearch时遇到的处理器设置冲突问题,通过设置系统属性'es.set.netty.runtime.available.processors'为false解决了WebFlux与Netty的冲突,确保了项目的正常运行。

702

被折叠的 条评论
为什么被折叠?



