개요
이 가이드 에서는 .NET/ C# 드라이버 연결 풀을 사용하여 MongoDB deployment 에 대한 연결을 관리 방법과 애플리케이션 에서 연결 풀 설정을 구성하는 방법에 대해 학습 수 있습니다.
연결 풀 .NET/ C# 드라이버 에 의해 유지 관리되는 개방형 데이터베이스 연결의 캐시 입니다. 애플리케이션 MongoDB 에 대한 연결을 요청하면 .NET/ C# 드라이버 풀에서 원활하게 연결을 가져오고, 작업을 수행하고, 재사용을 위해 연결을 풀에 반환합니다.
연결 풀은 애플리케이션 지연 시간 줄이고 .NET/ C# 드라이버 에 의해 새 연결이 생성되는 횟수를 줄이는 데 도움이 됩니다. 다음 다이어그램은 MongoClient 가 연결 풀 관리하는 방법을 간략하게 보여줍니다.
연결 풀 구성
MongoClient 객체 또는 연결 URI에서 다음 연결 풀 설정을 지정할 수 있습니다.
설정 | 설명 |
|---|---|
| .NET/C# 드라이버가 새 연결을 설정할 때 시간 초과 전에 대기하는 최대 시간입니다. |
| 각 풀이 동시에 설정할 수 있는 최대 연결 수입니다. 이 제한에 도달하면 연결이 설정되거나 사용 중인 다른 연결이 풀로 다시 체크인될 때까지 추가 요청이 대기합니다. |
| 푸린 내에서 연결이 유휴 상태로 있을 수 있는 최대 시간. 연결이 이 제한을 초과하면 .NET/C# 드라이버가 연결을 닫고 푸린에서 제거합니다. |
| 연결을 푸링할 수 있는 최대 시간입니다. 연결이 이 제한을 초과하면 .NET/C# 드라이버가 연결을 닫고 푸린에서 제거합니다. |
| 풀이 유지하는 동시 연결의 최대 수입니다. 최대 풀 크기에 도달하면 연결이 사용 가능해질 때까지 추가 요청이 대기합니다. |
| 풀이 유지하는 최소 동시 연결 수입니다. 네트워크 오류로 인해 열린 연결 수가 이 값 보다 작은 경우 .NET/C# 드라이버는 새 연결을 만들어 이 최소값을 유지하려고 시도합니다. |
| 시간이 초과되기 전에 .NET/C# 드라이버가 서버의 응답을 기다리는 시간 길이. |
| 타임아웃되기 전에 연결 풀에서 연결을 사용할 수 있을 때까지 스레드가 대기하는 시간입니다. |
다음 코드는 MaxConnectionPoolSize 매개변수를 사용하여 최대 연결 풀 크기가 50 인 클라이언트 만듭니다.
var settings = MongoClientSettings.FromConnectionString("<connection URI>"); settings.MaxConnectionPoolSize = 50; var client = new MongoClient(settings);
다음 코드는 앞의 예시 와 구성이 동일하지만 연결 URI를 사용하여 클라이언트 생성합니다.
var settings = MongoClientSettings.FromConnectionString("<hostname>?maxPoolSize=50"); var client = new MongoClient(settings);
추가 정보
연결 풀에 대해 자세히 학습 MongoDB Server 매뉴얼의 연결 풀 개요를 참조하세요.
API 문서
이 가이드에서 사용되는 메서드 또는 유형에 대해 자세히 알아보려면 다음 API 설명서를 참조하세요.