Saat ini saya sedang belajar MongoDB dan saya sedang bermain-main dengan koneksi set replika. Saya suka berkontribusi dengan 2 cara yang saya gunakan untuk terhubung ke database yang menurut saya berguna, jika tidak membantu siapa pun, setidaknya saya akan memiliki tempat untuk merujuk di masa depan (saya yakin saya akan pergi membutuhkannya di beberapa titik) pertama:
var connString = "mongodb://localhost:27029,localhost:27027,localhost:27028?connect=replicaSet";
var client = new MongoClient(connString);
var db = client.GetDatabase("test");
kedua:
var settings = new MongoClientSettings
{
Servers = new[]
{
new MongoServerAddress("localhost", 27027),
new MongoServerAddress("localhost", 27028),
new MongoServerAddress("localhost", 27029)
},
ConnectionMode = ConnectionMode.Automatic,
ReplicaSetName = "m101",
WriteConcern = new WriteConcern(WriteConcern.WValue.Parse("3"),wTimeout:TimeSpan.Parse("10"))
};
var client = new MongoClient(settings);
Yang pertama, memungkinkan saya untuk terhubung ke database melalui server yang ditentukan dalam daftar server. Hal ini memungkinkan driver untuk terhubung secara otomatis ke node utama baru di set replika jika terjadi kegagalan dengan prinsipal.Dengan yang kedua, saya mengirim daftar server di set replika, jenis koneksi. Nama set replika, dan konfigurasi perhatian penulisan. Dengan pengaturan ini, saya memaksa pengemudi untuk menunggu konfirmasi penulisan dari 3 server di set replika (WValue:3) dan menunggu paling lama 10 detik untuk konfirmasi penulisan.