반응형
🧐 질문 | 레플리카 셋이 무엇인가요?
- 마스터 서버와 슬레이브 서버의 문제점을 개선, 보완한 기능이 레플리카 셋 입니다.
- 레플리카 셋에서 실시간으로 사용되는 메인 서버를 Primary(프라이머리)서버라고 합니다.
- 사용자들은 프라이머리 서버를 통해 데이터를 입력, 수정, 삭제, 조회합니다.
- 슬레이브 서버의 백업 데이터로 마스터 서버를 복구하기 위해서는 일정 시간동안 서비스를 중지해야 하는 문제점이 발생합니다
- 실시간 복구 작업을 수행할 수 없다는 뜻 입니다.
- 프라이머리 서버에 장애가 발생하게 되면 실시간 서비스가 안되기 때문에 치명적인 상황에 놓이게 됩니다.
- 리프리카 셋에서 두 번째 서버를 Secondary(세컨더리)서버라고 합니다.
- 프라이머리 서버에 장애가 발생해 서비스를 수행할 수 없을 때 프라이머리 서버의 마지막 수행 작업부터 연석적으로 작업을 수행해 줍니다.
- 이때부터 세컨더리 서버는 프라이머리 서버가 되고 최초 설정되었던 프라이머리 서버는 복구 후 세컨더리 서버가 됩니다.
- Secondary For Backup은 세컨더리 서버에 장애가 발생하는 경우를 대비하여 추가 복제 서버를 설정한 경우입니다.
특징
- 레플리카 셋에서 프라이머리 서버는 2초마다 세컨더리 서버의 상태를 체크하고 동기화를 위한 HeartBeat 작업을 수행합니다.
- 세컨더리 서버가 중지되더라도 복제 작업만 중지 될 뿐이고 프라이머리 서버에 대한 읽기 작업을 수행하게 됩니다.
- 만약 프라이머리 서버가 중지되면 세컨더리 서버가 프라이머리 서버가 됩니다.
- OpLog는 프라이머리 서버가 세컨더리 서버로 복제 작업을 수행하다 장애로 인해 작업을 수행할 수 없을 경우 동기화하지 못 한 데이터를 추후 세컨더리 서버로 반영해 주기 위해 데이터를 백업해 줍니다.
- OpLog의 기본 크기는 1GB입니다.
반응형
'노트 > 질문 노트' 카테고리의 다른 글
[질문 노트] : CF-CLI가 무엇인가요? (0) | 2021.12.12 |
---|---|
[질문 노트] : BOSH란 무엇인가요? (0) | 2021.12.12 |
[질문 노트] : Sharding System은 무엇인가요? (0) | 2021.12.08 |
[질문 노트] : Master Server와 Slave Server는 어떻게 데이터를 동기화 하나요? (0) | 2021.12.08 |
Master & Slave Server가 무엇인가요? (0) | 2021.12.07 |
댓글