问题描述
我有一个连接到外部MongoDB服务器的java Spring-Boot应用程序。每当我启动应用程序时,我都会看到创建了两个集群:
[ Test worker] org.mongodb.driver.cluster : Cluster created with settings {hosts=[127.0.0.1:27017],mode=SINGLE,requiredClusterType=UNKNowN,serverSelectionTimeout='30000 ms'}`
[ Test worker] org.mongodb.driver.cluster : Cluster created with settings {hosts=[<mymongo server address>:27017],serverSelectionTimeout='30000 ms'}
并随后引发错误:
[127.0.0.1:27017] org.mongodb.driver.cluster : Exception in monitor thread while connecting to server 127.0.0.1:27017
com.mongodb.MongoSocketopenException: Exception opening socket
at com.mongodb.internal.connection.AsynchronousSocketChannelStream$OpenCompletionHandler.Failed(AsynchronousSocketChannelStream.java:116) ~[mongodb-driver-core-4.0.5.jar:na]...
我在本地主机上没有MongoDB。
我的Mongo客户端配置:
@Configuration
public class MongoConfiguration extends AbstractReactiveMongoConfiguration {
@Value("${spring.data.mongodb.uri}")
private String mongoUri;
@Bean
public MongoClient mongoClient() {
return MongoClients.create(mongoUri);
}
@Override
protected String getDatabaseName() {
return "db_test";
}
}
Spring-boot入门班:
@EnableReactiveMongoRepositories
@SpringBootApplication(exclude = {MongoAutoConfiguration.class,MongoDataAutoConfiguration.class,MongoReactiveAutoConfiguration.class,EmbeddedMongoAutoConfiguration.class})
@ConfigurationPropertiesScan(basePackages = "com.netsurf")
@EnableConfigurationProperties
public class ConfigurationServiceApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigurationServiceApplication.class,args);
}
}
在application.properties中,我有:
spring.data.mongodb.uri=mongodb://my_mongo_server_address
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)