2011-02-10 16 views
7

Düşük gecikmeli bir ticaret uygulaması üzerinde çalışıyorum. Dosyaya yazdığımız lof4j günlüğü miktarını arttırmak isteriz, uçtan uca işlem süremizin üzerindeki etkiyi en aza indiririz.Log4j'nin FileAppenders'ı eşzamansız olarak nasıl kullanılır?

Bunu yapmanın önerilen yolu nedir? Ben FileAppender.append senkron olduğunu düşünüyorum, bu yüzden biraz daha akıllı bir şey yapmamız gerekiyor ....

+1

"Sizce"? Aslında bir darboğaz olduğunu doğruladınız mı? Bu yeterince kolay olmalı. –

+2

İpucu: 'BufferedIO' seçeneği için [JavaDoc] 'u (http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/FileAppender.html#getBufferedIO()) işaretleyin. –

cevap

3

Eğer çok iş parçacıklı bir uygulamadan oturum açmanız gerekiyorsa slf4j ve onun uygulama logback çok daha iyi bir seçimdir.

+0

, bunu söylemenizi sağlayan "ihtiyatlı" bayrak mı? –

3

ayı akılda AsyncAppender yapmanız giriş miktarını artırarak dize concatentation genellikle demektir oluyor miktarında önemli bir artış anlamına gelebilir appender & başına bir iş parçacığı eklediği: Böyle bir şey istiyorum Oldukça pahalı olabilen (zaten düşük gecikmeli işlem uygulamasında yer alan gecikmeye göre) önemli miktarda dize işleme/dilimleme/formatlama.

İlgili konular