2

おそらく目の前ですが、C#ドライバーでReadPreference.Secondary設定を設定する方法がわかりませんか? デフォルトではなく、セカンダリ ノードにクエリの負荷を分散させたいと考えていました。ノード自体に slaveOk() を設定しました。

ヘルプ/例をいただければ幸いです。そのプロパティを設定する良い例が見つかりません。

ありがとう、

S

編集:おそらく ReadPreference は C# ドライバーにまだ実装されていません...そのようです。それでは、slaveokを使用しますか?

以下のいずれかのようなものですか?:

var mongoServer = MongoServer.Create("mongodb://localhost/?
replicaSet=myset;slaveOk=true");

var db = mongoServer.GetDatabase("MyDb");
var coll = db.GetCollection("MyColl");

また

var cs= db.CreateCollectionSettings<BsonDocument>("Users");
cs.SlaveOk = true;
var coll = db.GetCollection(cs);

EDIT2: 各Mongoインスタンスも装飾するために接続文字列を変更する必要があるように見えますか?

mongodb://serverA:27017,serverB:27017,serverC:27017/?safe=true;replicaset=myreplicaset;slaveok=true
4

1 に答える 1

2

はい、ReadPreferences は C# ドライバーに実装されていません。10gen では、mongos を含むすべてのドライバーがすべて同時に実装できるようになるまで、ReadPreferences の実装を待っていました。このサポートは、サーバー リリース 2.2 の頃に提供される予定です。

于 2012-06-25T12:06:29.947 に答える