[SPRING] Spring mongo 질의는 커스텀 타임 아웃을 설정한다.
SPRINGSpring mongo 질의는 커스텀 타임 아웃을 설정한다.
내 봄 - 몽고 자바 응용 프로그램에서 시간 제한 설정을 낮추고 싶습니다 (데이터베이스에 액세스 할 수없는 경우 300 밀리 초 후에 쿼리가 실패해야 함).
나는이 설정을 시도 :
@Configuration
public class MongoConfiguration {
private String mongoUri = "mongodb://127.0.0.1:27017/myDb?connectTimeoutMS=300&socketTimeoutMS=300&waitQueueTimeoutMS=300&wtimeoutMS=300";
@Bean
public MongoDbFactory mongoDbFactory() throws Exception {
Builder options = new MongoClientOptions.Builder().socketTimeout(300).connectTimeout(300).maxWaitTime(300);
return new SimpleMongoDbFactory(new MongoClientURI(mongoUri, options));
}
@Bean
public MongoTemplate mongoTemplate() throws Exception {
MongoDbFactory mongoDbFactory = mongoDbFactory();
MongoTemplate mongoTemplate = new MongoTemplate(mongoDbFactory);
return mongoTemplate;
}
}
하지만 mongoUri 옵션이나 빌더가 시간 초과를 변경합니다. 쿼리가 30 000ms 후에 만 실패합니다.
어떤 매개 변수를 재정의해야하는지, 제대로 수행 할 수있는 방법이 확실하지 않습니다.
당신의 도움을 주셔서 감사합니다
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.9.5.RELEASE</version>
</dependency>
해결법
-
==============================
1.나는 그 답을 여기에서 발견했다 : https://scalegrid.io/blog/understanding-mongodb-client-timeout-options/
나는 그 답을 여기에서 발견했다 : https://scalegrid.io/blog/understanding-mongodb-client-timeout-options/
@Bean public MongoDbFactory mongoDbFactory() throws Exception { MongoClientOptions.Builder optionsBuilder = MongoClientOptions.builder(); optionsBuilder.connectTimeout(300); optionsBuilder.socketTimeout(300); optionsBuilder.serverSelectionTimeout(300); return new SimpleMongoDbFactory(new MongoClientURI(mongoUri, optionsBuilder)); }
from https://stackoverflow.com/questions/41766929/spring-mongo-queries-set-custom-timeout by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring Data JPA : "여러 속성으로 삭제"방법은 어떻게 작성합니까? (0) | 2019.05.15 |
---|---|
[SPRING] 스프링 3.1에서 와일드 카드를 사용하여 XML 리소스 파일을로드하는 방법 (0) | 2019.05.15 |
[SPRING] 항아리를 실행할 때 스프링 부팅 DevTools 강제 실행 (0) | 2019.05.15 |
[SPRING] Spring 배치 단일 파일에서 다중 파일로 다중 스레드 처리 (0) | 2019.05.15 |
[SPRING] 웹 아키텍처 : MVC, 지연 초기화 (Lazy initialization), 데이터 전송 객체, 열린 세션보기에서 컨센서스 접근법이 있습니까? (0) | 2019.05.15 |