Mongo
PHP Manual

Mongo::switchSlave

(PECL mongo >=1.1.0)

Mongo::switchSlaveslaveOkay 読み込み用の新しいスレーブを選ぶ

説明

public string Mongo::switchSlave ( void )

これは、読み込み用に使う新しいスレーブをランダムに選びます。 ドライバから自動的にコールされるので、このメソッドを使う必要はありません。このメソッドは Mongo::getHosts() (ホストの状態を更新) および Mongo::getSlave() (返り値を取得) をコールします。

読み込みのスレーブへの分散についての情報は、このマニュアルの 問い合わせの節 を参照ください。

パラメータ

この関数にはパラメータはありません。

返り値

この接続が読み込みに使っているスレーブのアドレスを返します。 アドレスはランダムに選ばれるので、前と同じアドレスになることもあります。 稼働中のセカンダリが 1 台だけ (あるいはプライマリだけ) の場合はひとつのアドレスしか返しません。

たとえば、プライマリ・セカンダリ・アービター (調停者) の 3 台からなるレプリカセットの場合、 このメソッドは常にセカンダリのアドレスを返します。セカンダリがダウンしているときは、 このメソッドは常にプライマリのアドレスを返します。プライマリもダウンしたときは このメソッドは例外をスローします。アービターが読み込みを処理できないからです。

エラー / 例外

レプリカセットでない接続に対してコールした場合は MongoException (エラーコード 15) をスローします。 読み込み先 (プライマリあるいはセカンダリ) が見つからない場合は MongoException (エラーコード 16) をスローします。


Mongo
PHP Manual