MongoDBのストレージエンジン ココで触れた通り MongoDBは書き込みリクエストを受け付けると、一旦、内部キューにデータを積み、 バックグラウンドスレッド(journal)によって、journalファイルとデータファイルのmmap領域に書き込まれる。 その後、更にバックグラウンドスレッド(DataFileSync)によってmsync()され無事にファイルに書き込まれる事になっている。 この書き込む動作をwriteback呼ぶ しかし、Linuxでは、mmap()領域はmsync()せずともkernelが一定間隔で書き込んでくれる。 今回は、この辺の挙動の話。 MongoDBのwriteback mongodの起動オプション--syncdelay=<秒> によって指定できる。 デフォルト値は60 0を指定するとmsync()を呼ばない挙動になる。 //docs.mongodb.org