Który programista log4Net jest najszybszy z wyjątkiem ConsoleAppendera?Jaki jest najszybszy program do log4Net?
Odpowiedz
Zamówienie na BufferingForwardingAppender. Używamy tego, co przekazuje do RollingFileAppender. Pobiera zapisy i pozwala na kontynuowanie kodu bez czekania na zapis. Ustawiliśmy system oceny, aby wymusić spłukiwanie na progu WARN i ustawić wartość stratną na false, abyśmy nie przegapili żadnych wiadomości.
<appender name="BufferingForwardingAppender" type="log4net.Appender.BufferingForwardingAppender">
<bufferSize value="512" />
<lossy value="false" />
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="WARN"/>
</evaluator>
<appender-ref ref="RollingFileAppender" />
</appender>
można napisać odpowiednik log4net z NullAppender, co byłoby bardzo szybko ... (Ups - Początkowo myślałem, pytanie było o log4j; ta sama rada dotyczy jednak.)
Oczywiście, że byłoby miło” Zrobić cokolwiek pożytecznego - co prowadzi mnie do zastanawiania się, dlaczego tak bardzo zależy Ci na szybkości. Normalnym podejściem jest ustalenie, czego potrzebujesz, a następnie porównanie/profilowanie w celu sprawdzenia, czy działa poprawnie. Podejrzewam, że będziesz zapchany większą ilością danych, niż możesz z pożytkiem przetworzyć, zanim faktycznie stanie się wąskim gardłem. Czy masz znany problem z wydajnością podczas rejestrowania?
Żaden problem z wydajnością nie jest związany z rejestrowaniem, ale ogólnie szukam poprawy wydajności aplikacji i dodałem log4Net do profilowania go w środowisku wykonawczym. Nie chcę, aby było to zbyt duże obciążenie, ponieważ aplikacja jest już powolna. Więc szukam aplikanta, który jest najszybszy. – Amitabh
@Amitabh: Jeśli aplikacja jest już wolna, oznacza to, że rejestrowanie to * mniej * może mieć znaczący wpływ. Naprawdę, używaj tego, co najłatwiejsze do zalogowania, a potem po prostu loguj się sensownie. To najprawdopodobniej najszybszy sposób na zwiększenie ogólnej szybkości aplikacji. –
Dodam, że czasami problemem nie jest to, jak wolno logować, ale jak inwazyjnie. Na przykład, jeśli logujesz się z wielu wątków, sama rejestracja może spowodować ich synchronizację, która wyłączy to, co chcesz zmierzyć. Typową odpowiedzią jest zalogowanie się do kolejki, która jest przetwarzana w jednym wątku. –
należy rozważyć
- pisanie do pliku jest znacznie szybsze niż pisanie pocieszyć
- Chyba problem jest z pre-produkcji (ceating danych dziennika, a następnie nie jest używany) użyj log.canLog, aby się upewnić, że możesz się zalogować, zanim utworzysz dane (zwykle jest to duży czas).
- Sprawdź, czy nie używasz wszystkich rodzajów pól, które są czasochłonne, jak aktualne poświadczenia użytkownika itp. .
- 1. Jaki jest najlepszy program do kompresji Unix?
- 2. Jaki jest najszybszy sposób dodania kilku widoków do LinearLayout?
- 3. Jaki jest najszybszy sposób obliczenia e do 2 trylionów cyfr?
- 4. Jaki jest najszybszy sposób na sprawdzenie, czy obiekt jest IEnumerable?
- 5. Czy log4net jest martwy?
- 6. Jaki jest najszybszy sposób na wprowadzenie DataTable na serwer SQL?
- 7. Jaki jest najszybszy sposób na załadowanie danych w Matlab
- 8. Jaki jest najszybszy sposób na znalezienie wszystkich wystąpień podłańcucha?
- 9. Jaki jest najszybszy sposób przekonwertowania wartości float [] na bajt []?
- 10. Jaki jest najszybszy sposób filtrowania danych z ArrayList?
- 11. Jaki jest najszybszy sposób przypisania zmiennych w oparciu o tablicę?
- 12. Jaki jest najszybszy sposób aktualizacji istniejących rekordów za pomocą sekwencji?
- 13. .NET - SQL Select -> Array. Jaki jest najszybszy sposób?
- 14. Jaki jest najszybszy sposób sortowania wielu lokalizacji na odległość?
- 15. Jaki jest najszybszy sposób na edycję setek wiadomości zatwierdzania Git?
- 16. Jaki jest najszybszy sposób porównywania poprawek z tablicy?
- 17. Jaki jest najszybszy sposób przekonwertowania aplikacji React na React Native?
- 18. Jaki jest najszybszy sposób na połączenie dwóch list w python?
- 19. Jaki jest najszybszy algorytm algorytmu dla szerokiego zastosowania
- 20. Jaki jest najszybszy sposób na uzyskanie podmenu mapy
- 21. Jaki jest najszybszy sposób wykonywania wielu porównań logicznych w R?
- 22. Jaki jest najłatwiejszy/najszybszy sposób sprawdzenia, kiedy utworzono gałąź git?
- 23. Jaki jest najszybszy sposób obliczenia dużej mocy 2 modulo numer
- 24. Jaki jest najszybszy sposób wyszukiwania ciągów w Objective-C?
- 25. Jaki jest najlepszy/najszybszy sposób nauki GLADE z C?
- 26. Jaki jest najszybszy sposób sprawdzenia duplikatów cyfr numeru?
- 27. Jaki jest najszybszy sposób na podzielenie macierzy scipy.sparse?
- 28. dalej od log4net do NLog
- 29. Jaki jest najlepszy wzorzec do używania tego samego rejestratora Log4net w wielu złożeniach w rozwiązaniu?
- 30. Inicjalizacja log4net
Bardzo dobry pomysł. Nie próbowałem jeszcze, ale kiedyś. –
Dokładnie to, czego nie wiedziałem, czego szukałem. – ctrlplusb
Przetestowałem to w prostym projekcie internetowym i (zaskakująco) skalowalność się nie poprawia, jest raczej gorsze. ** Test **: 500 żądań/50 użytkowników dla 20 wierszy dziennika na żądanie. ** Wyniki **: Brak logowania: 278 odpowiedzi/s, Rolling File Appender: 129 req/s, buforowanie przekazywania z toczącym się plikiem: 76 req/s. – tozevv