중요합니다
Azure Cosmos DB for PostgreSQL은 사용 중지 경로에 있으며 새 프로젝트에는 더 이상 권장되지 않습니다. 대신 다음 두 서비스 중 하나를 사용합니다.
PostgreSQL 워크로드의 경우: Azure Database For PostgreSQL의 탄력적 클러스터 기능을 사용하여 오픈 소스 Citus 확장에 포함된 수평 스케일 아웃 및 분산 PostgreSQL 기능을 사용합니다.
NoSQL 워크로드의 경우 99.999% SLA(가용성 서비스 수준 계약), 인스턴트 자동 크기 조정 및 여러 지역에서 자동 장애 조치(failover)를 포함하는 분산 데이터베이스 솔루션에 대해 NoSQL용 Azure Cosmos DB를 사용합니다.
새 연결을 설정하려면 시간이 걸립니다. 이 방식은 대부분의 애플리케이션에서 작동하며, 이러한 애플리케이션은 많은 수의 단기 연결을 요청합니다. 유휴 트랜잭션을 줄이고 기존 연결을 다시 사용하려면 연결 풀러를 사용하는 것이 좋습니다. 자세한 내용은 블로그 게시물을 참조하세요.
직접 연결 풀러를 실행하거나, Azure에서 관리하는 PgBouncer를 사용할 수 있습니다.
관리되는 PgBouncer
PgBouncer와 같은 연결 풀러를 사용하면 더 많은 클라이언트가 동시에 코디네이터 노드에 연결할 수 있습니다. 애플리케이션은 풀러에 연결하고, 풀러가 명령을 대상 데이터베이스로 전달합니다.
클라이언트가 PgBouncer를 통해 연결하더라도 데이터베이스에서 동시에 실행될 수 있는 활성 연결 수는 변경되지 않습니다. 대신 PgBouncer는 초과 연결을 대기열에 넣고, 데이터베이스가 준비되면 해당 연결을 실행합니다.
Azure Cosmos DB for PostgreSQL은 이제 클러스터용 PgBouncer의 관리되는 인스턴스를 제공합니다. 또한 최대 2,000개의 동시 클라이언트 연결을 지원합니다. 또한 클러스터에 HA(고가용성)가 사용하도록 설정된 경우 관리형 PgBouncer에 대해서도 사용하도록 설정됩니다.
PgBouncer를 통해 연결하려면 다음 단계를 수행합니다.
- Azure Portal에서 클러스터에 대한 연결 문자열 페이지로 이동합니다.
- PgBouncer 연결 문자열 옆에 있는 확인란을 선택합니다. 나열되는 연결 문자열이 변경됩니다.
- 클라이언트 애플리케이션을 업데이트하여 새 연결 문자열로 연결하도록 하십시오.
Azure Cosmos DB for PostgreSQL을 사용하면 관리되는 PgBouncer 매개 변수를 코디네이터 노드 매개 변수로 구성할 수 있습니다.
다음 단계
Azure Cosmos DB for PostgreSQL의 제한 사항에 대해 자세히 알아보세요.