Overview
MongoDB Rubyドライバーは、読み取りまたは書き込みのサーバーを選択するときに、定義されたアルゴリズムまたはクライアントオプションで定義された読み込み設定 (read preference)に従います。
サーバー選択アルゴリズム
Rubyドライバーが 読み取り操作を実行するとき、次の手順を順番に実行してMongoDBデプロイを選択します。
Rubyドライバーは、アクティブな読み込み設定 (read preference)と一致するすべてのサーバーを選択します。
Rubyドライバーは、
localThresholdMS接続設定条件を満たさないサーバーをリストから削除し、更新されたリストを返します。Rubyドライバーは、リストに残っているサーバーからランダムにサーバーを選択し、このサーバーに対して操作を実行します。
Rubyドライバーが 書込み (write)操作を実行する際、まず、アクティブな読み込み設定 (read preference)と一致するサーバーだけでなく、すべての書込み可能なサーバーを選択します。残りの手順は同一です。
サーバー選択アルゴリズムの詳細については、 MongoDB Serverマニュアルのサーバー選択アルゴリズムを参照してください。
MongoDB Server選択をカスタマイズ
レプリカセットの場合、読み込み設定 (read preference)を選択して、 Rubyドライバーが読み込むメンバーを決定できます。読み込み設定 (read preference)を構成する方法の詳細については、 CRUD操作ガイドの「読み込み設定 (read preference)」セクションを参照してください。
API ドキュメント
Rubyドライバーの サーバー選択アルゴリズムの詳細については、次のAPIドキュメントを参照してください。