본문 바로가기

MongoDB

Spring-data-mongodb 연동시 option정보

Spirng Boot 2.2.4를 사용할때 Spring-data-mongodb를 사용하게 되는데 2.2.4 RELEASE 버전을 사용하게 된다.
여기서 사용하는 자바 설정 파일은 AbstractMongoClientConfiguration을 상속 받아서 설정 할 수 있고 기존에 사용했던
AbstractMongoConfiguration랑은 설정과 옵션이 조금 변경된것 같다.
찾아보니 xml로 쉽게 mongodb연동이 가능하고 연동할때 제공해주는 옵션이 있는데 찾아보니 잘 안나와서 직접 소스 까서 번역(구글번역, 파파고) 하였다.

 

  • min-connections-per-host :  호스트당 최소 연결 수
  • connections-per-host :호스트당 연결 가능한 수, 연결이 부족하면 차단됨 디폴트 100
  • threads-allowed-to-block-for-connection-multiplier:  차단 할수 있는 connectionsPerHost 에 승수, 기본값은 5이다. connectionsPerHost 가 10이고 threadsAllowedToBlockForConnectionMultiplier 5라고 했을때 50보다 많은 스레드가 요청한다면 익셉션이 발생함.
  • max-wait-time : 연결에 대한 블로킹 스레드의 최대 대기시간. 디폴트 120000ms 2분
  • max-connection-idle-time풀링에 연결의 최대 유휴시간 
  • max-connection-life-time : 풀링에 연결된 최대 수명
  • connect-timeout : 연결시간 초과. 0은 기본이며 무한대임
  • socket-timeout: 소켓 타임아웃. 0은 기본이며 무한대임
  • socket-keep-alive : 연결유지 플래그는 소켓 연결 유지 시간 종료 여부를 제어함. 기본은 false
  • server-selection-timeout : 예외를 던지기 전에 서버 선택이 성공할 때까지 얼마나 오래 기다릴지 정의하는 밀리초 단위의 서버 선택 시간 초과입니다. 기본 시간은 30초
  • read-preference :읽기 환경 설정
  • readPreferenceEnumeration : MongoDbFactory에 DB 개체를 요청할 때 사용되는 기본값이 될 WriteConcern
  • writeConcernEnumeration : 드라이버가 클러스터에있는 각 서버의 현재 상태를 확인하려고 시도하는 빈도.
  • min-heartbeat-frequency : 드라이버가 서버의 가용성을 자주 재확인해야하는 경우, 이전 점검 이후 노력을 낭비하지 않기 위해 최소한이 시간 동안 기다림
  • heartbeat-connect-timeout : 클러스터 하트비트에 사용되는 연결에 대한 연결 시간 초과.
  • heartbeat-socket-timeout : 클러스터 하트비트에 사용되는 소켓 연결시간 초과
  • ssl : 드라이버가 ssl연결을 해야 하는지 여부 디폴트는 false
  • ssl-socket-factory-ref : SSL 연결에 사용할 SSLSocketFactory. 구성되지 않은 경우 SSLSocketFactory#getDefault()가 사용된다.

writeConcern이란 : https://bluese05.tistory.com/74

 

 

 

'MongoDB' 카테고리의 다른 글

MongoDB 로컬에서 Docker로 실행하기(MAC에서)  (0) 2020.02.11
왜 MongoDB인가?  (0) 2020.01.29