Docs Menu
Docs Home
/ / /
Java Sync Driver
/ /

クラスター設定

項目一覧

  • Overview

このガイドでは、 Javaドライバーがクラスターを管理する方法について学習できます。

クラスターの設定を指定するには、接続文字列を使用するか、MongoClientSettingsオブジェクトを MongoClient コンストラクターに渡します。使用可能なオプションを確認するには、Connection String タブまたは MongoClientSettingsタブを選択します。

MongoDBクラスターを操作するときのドライバーの動作を変更するには、接続文字列に次のパラメーターを含めます。

オプション名
タイプ
説明

serverSelectionTimeoutMS

integer

ドライバーが例外をスローする前に、サーバー選択が成功するまで待機する最大時間をミリ秒単位で指定します。

デフォルト: 30000 ( 30秒)

localThresholdMS

integer

レプリカセット内のMongoDBの複数のインスタンスと通信する場合、ドライバーは、応答時間が最も短いサーバーとローカルしきい値(ミリ秒単位)以下のサーバーにのみリクエストを送信します。

デフォルト: 15

replicaSet

string

提供された接続stringに複数のホストを含めることを指定します。 指定すると、ドライバーはそのセットのすべてのメンバーを検索しようとします。

デフォルト: null

directConnection

ブール値

ドライバーがホストに直接接続する必要があることを指定します。これは MongoClientSettingsmode(ClusterConnectionMode.SINGLE) を適用するのにマッピングします。

デフォルト: false

loadBalanced

ブール値

ドライバーが ロードバランサーを使用してMongoDBに接続しているかどうかを指定します。

デフォルト: null

srvServiceName

string

シードリストを構築するためにドライバーが取得する SRVリソースレコード のサービス名を指定します。このオプションを使用するには、接続 URI DNS シード リスト接続形式 を使用する必要があります。

デフォルト: mongodb

この例では、構成されているMongoDBクラスターのタイプに関係なく、サーバーにドライバーを直接接続します。

ConnectionString connectionString = "mongodb://<host>:<port>/?directConnection=true"
MongoClient mongoClient = MongoClients.create(connectionString)

これらのパラメーターの詳細については、「 ConnectionString APIドキュメント 」を参照してください。

applyToClusterSettings() のチェーン メソッドを使用して、MongoDB クラスターを操作するときにドライバーの動作を変更します。

次の表では、 設定に連鎖させてドライバーの動作を変更できる方法について説明します。

方式
説明

addClusterListener()

クラスター関連のイベントのリスナーを追加します。

applyConnectionString()

ConnectionStringオブジェクトの設定を使用します。

applySettings()

ClusterSettingsオブジェクトで指定されたクラスター設定を使用します。

hosts()

mongo配置のすべての指定された場所を設定します。

localThreshold()

サーバーのラウンドトリップにかかる時間を設定し、かつサーバー選択の対象となる時間を設定します。

デフォルト: 15 milliseconds

mode()

MongoDB 配置に接続する方法を設定します。

requiredClusterType()

クラスターに必要なクラスターのタイプを設定します。

requiredReplicaSetName()

クラスターに必要なレプリカセット名を設定します。

serverSelectionTimeout()

タイムアウト例外をスローする前に、プライマリ ノードを選択する最大時間を設定します。

デフォルト: 30 seconds

serverSelector()

サーバーの選択の前に適用するサーバー セレクターを追加します。

srvHost()

SRV DNS レコードを検索して MongoDB ホストを検索するために使用するホスト名を設定します。

ホストに関連付けられた TXT レコードの処理を有効にする場合は、applyConnectionString() メソッドを使用して接続文字列で SRV ホストを指定します。

以下に例を挙げます。

MongoClient mongoClient =
MongoClients.create(MongoClientSettings.builder()
.applyConnectionString(new ConnectionString("mongodb+srv://host1.acme.com")))

srvMaxHosts()

mongodb+srv接続stringプレフィックスで識別される、DNS シードリスト(SRV)接続プロトコルを使用するときにドライバーが接続できるホストの最大数を設定します。

SRV 接続プロトコルを使用していない場合は、 が例外をスローします。

この例では、構成されているMongoDBクラスターのタイプに関係なく、サーバーにドライバーを直接接続します。

MongoClient mongoClient = MongoClients.create(
MongoClientSettings.builder()
.applyToClusterSettings(builder ->
builder.mode(ClusterConnectionMode.SINGLE))
.build());

Tip

これは、接続 URI で指定できる directConnection パラメータと同様です。詳細については、[ 接続文字列 ]タブを参照してください。

連鎖メソッドの詳細については、MongoClientSettings.Builder APIドキュメント を参照してください。

戻る

接続プール

項目一覧