My web service writes to a mongodb and I notice that under load, the writes are failing a lot.
Reading this documentation I see that by default the settings are set to "Acknowledge" and reading this post It seems I need to set it to a higher setting (safe mode - which seems to be deprecated). So my question is , how should I initialize my mongodb such that my web service will "always" write to the db (or throw an error trying) and not fail (assuming it can write :) )
From what I understand I need to set the "write concern" but not clear on how to set it to "Assure success in writing to the db"
The code I am using now to retrieve the Db is :
MongoClient client = new MongoClient(connection_string);
var server = client.GetServer();
Database = _db = server.GetDatabase(dbname);
Your connection string needs to have the option w=1 for this, which is the default in later versions of the driver. This looks like the following in the connection string:
But this is the default.
You write that "writes are failing a lot" - how do you see that? By documents not being in the database, or by getting errors? Let me know and I'll update the answer.