我們有一個應用程序,該應用程序使用streamwriter記錄到當前的文件。當我們正在擴大應用程序的範圍時,日誌記錄模塊即將出現。該應用程序是多線程的,可以使用數千個線程數來執行。線程數不會觸及CPU,因爲大部分職責都是在運行中處理TCP套接字。但是日誌記錄是一個問題,因爲這裏存在收斂性,並且單個線程的性能在此處受到TAT的影響。在多線程中運行.NET應用程序的日誌記錄最佳實踐
我希望得到大家的意見,關於可以採用哪種架構/設計進行日誌記錄。
我想使用數據庫作爲日誌接收器。但作者將不得不有一個我感覺到的鎖定機制。我不認爲,我應該嘗試在線程中創建大量的記錄器。另一個選項,我想在記錄器頂部進行池化。
我還應該看看MSMQ類技術來快速移出流量嗎?
感謝您的指導。我實際上期待着從像log4net這樣的東西開始,以獲得其他人的經驗優勢。同時,我也在考慮滿足我的具體要求。 – Kangkan 2010-12-09 07:36:25
+1推薦標準產品 – 2010-12-12 20:11:43