AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

接続プール

このガイドでは、 .NET/ C#ドライバーが接続プールを使用してMongoDBデプロイへの接続を管理する方法と、アプリケーションで接続プール設定を構成する方法について学習できます。

接続プールはとはオープンデータベース接続のキャッシュであり、 .NET/ C#ドライバーによって維持されます。アプリケーションがMongoDBへの接続を要求すると、 .NET/ C#ドライバーはプールからシームレスに接続を取得し、操作を実行し、再利用するためにプールに接続を返します。

接続プールは、アプリケーションのレイテンシと、 .NET/ C#ドライバーによって新しい接続が作成される回数を削減するのに役立ちます。次の図は、MongoClient が接続プールを管理する方法の概要を示しています。

CMAP 図

次の接続プール設定は、MongoClientオブジェクトまたは接続 URI で指定できます。

設定
説明

ConnectTimeout

.NET/C# ドライバーがタイムアウトする前に新しい接続を確立するときに待機する最大時間。

データ型: TimeSpan
デフォルト: 30 秒
接続 URI 例: connectTimeoutMS=0

MaxConnecting

各プールが同時に確立できる最大接続数。この制限に達した場合、接続が確立されるか、使用中の別の接続がプールに返されるまで、それ以降のリクエストは待機します。

データ型: integer
デフォルト: 2
接続 URI の例: maxConnecting=3

MaxConnectionIdleTime

プール内で接続がアイドル状態になる最大時間。接続がこの制限を超えると、.NET/C# ドライバーは接続を閉じてプールから削除します。

データ型: TimeSpan
デフォルト: 10 分
接続URIの例: maxIdleTimeMS=60000

MaxConnectionLifeTime

接続をプールできる最大時間。接続がこの制限を超えると、.NET/C# ドライバーは接続を閉じてプールから削除します。

データ型: TimeSpan
デフォルト: 30 分
接続URIの例: maxLifeTimeMS=50000

MaxConnectionPoolSize

プールが維持する同時接続の最大数。プールの最大サイズに達した場合、接続が利用可能になるまで、それ以降のリクエストは待機します。

データ型: integer
デフォルト: 100
接続 URI の例: maxPoolSize=150

MinConnectionPoolSize

プールが維持する同時接続の最小数。ネットワーク エラーにより開いている接続の数がこの値を下回った場合、.NET/C# ドライバーはこの最小値を維持するために新しい接続を作成しようとします。

データ型: integer
デフォルト: 0
接続 URI の例: minPoolSize=3

SocketTimeout

.NET/C# ドライバーがタイムアウトする前にサーバーからの応答を待つ時間の長さ。

データ型: TimeSpan
デフォルト: OS デフォルト
接続 URI 例: socketTimeoutMS=100000

WaitQueueTimeout

スレッドが接続プールで接続が利用可能になるまで待機し、タイムアウトするまでの時間。

データ型: TimeSpan
デフォルト: 2 分
接続 URI 例: waitQueueTimeoutMS=100000

次のコードでは、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 ドキュメントを参照してください。