close
文章出處

程序記錄錯誤日志是一種看起來對一般用戶沒什么作用,但對程序開發者用處很大的東西,它能查出錯誤或異常的程序馬跡。那么,常用的記錄錯誤日志的方式有哪些呢?

 

大多數情況下使用的是

 

1、直接記錄為txt/xml文件

2、Windows Event Log

 

其他記錄錯誤日志的方式

 

1、當前進程的本地隊列

沒有簡單高效的持久化機制實現,單次調用效率會降低

 

2、MSMQ

(1)、非進程內消息隊列,單次調用速度上,沒有進程內部本地隊列速度快

(2)、內建持久化機制,即便down機,信息也不會丟失

(3)、能簡單的通過啟動多個消費端程序來消費隊列元素,可擴展性強 

 

3、獨立進程中的WCF服務(進程間管道)

 

(1)、持久化機制取決于WCF服務實現方式,需要自己實現

(2)、本地機器上的進程之間命名管道通信,比網絡通信快(如:MSMQ,service broker,數據庫)

 

4、獨立進程中的WCF服務(異步調用方式)

 

(1)、可惜無法使用命名管道

(2)、存在網絡上的通信,速度降低

 

5、數據庫

 

注意:日志數據庫不能和業務數據庫合并在一起,否則會互相影響(高并發下)

 

6、Sql server的Service Broker

 

7、MongoDB(或者類似的NoSQL數據庫)

 

(1)、擁有持久化機制

(2)、速度快

(3)、如果記錄下的日志需要有查詢功能,這個選擇最好

(4)、不影響業務數據庫性能


不含病毒。www.avast.com
arrow
arrow
    全站熱搜

    AutoPoster 發表在 痞客邦 留言(0) 人氣()