0
私はlog4mongo-netを使用してmongodbに自分のログインを記録します。そして、データベースの書き込み中に時間を最小限に抑えたいので、LOGがビジネスメソッドの実行時間に影響しないようにします。ありlog4mongoがmongodbにフィールドを追加するときにタスクを使用
protected override void Append(LoggingEvent loggingEvent)
{
var collection = GetCollection();
collection.InsertOneAsync(BuildBsonDocument(loggingEvent));
CreateExpiryAfterIndex(collection);
}
protected override void Append(LoggingEvent loggingEvent)
{
System.Threading.Tasks.Task.Run(() =>
{
var collection = GetCollection();
collection.InsertOneAsync(BuildBsonDocument(loggingEvent));
CreateExpiryAfterIndex(collection);
});
}
へ:
は、私は、ソースコード(log4mongoネット/ MongoDBAppender.cs)、
入れmongdb変更OKタスク方法を提出し、追加することです副作用はありますか?
しかし、とにかくasyncを使って作業しているのですが、なぜ別のスレッドに追加したいのですか? – harishr
@entreテストを実行するとmongodbにリモートサーバーのコストがかかりすぎる(約200mm) – wtf512