이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.토토 사이트 : 문서 : 17 : 26 장. 고 가용성,로드 밸런싱 및 복제버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

챕터 25. 고가용성, 로드 밸런싱 및 복제

데이터베이스 서버는 함께 작동하여 두 번째 서버가 기본 서버에 장애가 발생하면 신속하게 인계받음(고가용성) 또는 여러 컴퓨터가 동일한 데이터를 제공하도록 허용하려면(로드 균형). 이상적으로는 데이터베이스 서버가 함께 작동할 수 있습니다. 원활하게. 정적 웹 페이지를 제공하는 웹 서버를 결합할 수 있습니다. 여러 요청에 대한 웹 요청의 로드 밸런싱만 하면 아주 쉽게 기계. 실제로 읽기 전용 데이터베이스 서버를 결합할 수 있습니다. 비교적 쉽게도요. 불행하게도 대부분의 데이터베이스 서버에는 읽기/쓰기 요청 혼합 및 읽기/쓰기 서버가 훨씬 더 어렵습니다. 결합하다. 이는 읽기 전용 데이터가 필요하기 때문입니다. 각 서버에 한 번만 배치하면 모든 서버에 대한 쓰기가 수행되어야 합니다. 모든 서버에 전파되어 향후 해당 서버에 대한 읽기 요청을 수행합니다. 서버는 일관된 결과를 반환합니다.

이 동기화 문제는 근본적인 어려움입니다. 함께 일하는 서버. 왜냐하면 하나의 해결책이 없기 때문입니다. 모든 사용 사례에 대한 동기화 문제의 영향을 제거합니다. 여러 솔루션입니다. 각 솔루션은 이 문제를 다음과 같이 해결합니다. 다른 방식으로 특정에 대한 영향을 최소화합니다. 작업량.

일부 솔루션은 하나만 허용하여 동기화를 처리합니다. 데이터를 수정하는 서버입니다. 데이터를 수정할 수 있는 서버를 서버라고 합니다. 읽기/쓰기,마스터또는기본서버. 변경 사항을 추적하는 서버 마스터가 호출됩니다대기또는노예서버. 할 수 없는 대기 서버 마스터 서버로 승격될 때까지 연결되는 것을 a따뜻한 대기서버이며, 연결을 수락하고 읽기 전용 쿼리를 제공하는 것을 a상시 대기서버.

일부 솔루션은 동기식입니다. 즉, 데이터 수정 모든 서버가 완료될 때까지 트랜잭션은 커밋된 것으로 간주되지 않습니다. 거래를 커밋했습니다. 이는 장애 조치(failover)가 발생하지 않도록 보장합니다. 모든 데이터가 손실되고 로드 밸런싱된 모든 서버가 반환됩니다. 어떤 서버를 쿼리하든 일관된 결과를 얻을 수 있습니다. 대조적으로, 비동기식 솔루션은 실행 시간 사이에 약간의 지연을 허용합니다. 커밋하고 다른 서버로 전파하여 전환 시 일부 트랜잭션이 손실될 가능성 백업 서버이며 로드 밸런싱된 서버는 약간 반환될 수 있습니다. 오래된 결과. 비동기식 통신은 동기식일 때 사용됩니다. 너무 느릴 거예요.

솔루션은 세분화에 따라 분류될 수도 있습니다. 일부 솔루션은 전체 데이터베이스 서버만 처리할 수 있지만 다른 것들은 테이블별 또는 데이터베이스별 수준에서 제어를 허용합니다.

어떤 선택이든 성능을 고려해야 합니다. 일반적으로 기능과 성능 사이의 균형. 예를 들어, 느린 네트워크를 통한 완전 동기식 솔루션은 성능이 절반 이상 감소하는 반면 비동기식 성능은 성능에 미치는 영향은 최소화됩니다.

이 섹션의 나머지 부분에서는 다양한 장애 조치에 대해 설명합니다. 복제 및 로드 밸런싱 솔루션을 제공합니다.