
Hi Ceki, The problem manifests itself under windows xp. Windows 7 is much better. Peter Am 21.12.2011 um 09:47 schrieb ceki:
Hi Peter,
FYI, running the little application you provided under JDK 1.6.0_23-b05 and Windows 7, I get 4.8 seconds with java and 1.1 seconds under javaw.
I am unable to reproduce the performance problem.
-- Ceki http://twitter.com/#!/ceki
On 21.12.2011 09:19, Peter Kullmann wrote:
Hi Ceki
I have tried using System.out.println() instead of logger.debug(). It is fast (less than a second).
Best regards, Peter
Am 20.12.2011 um 18:50 schrieb ceki:
Hi Peter,
If I understand correctly, you have shown that invoking System.out.println is slow with javaw. Do you know why? If the reason was known, for example it was due to exceptions being thrown, ConsoleAppender could address that problem.
Is it possible to check whether an app is running under javaw and not java? ConsoleAppender could disable itself under javaw.
-- Ceki http://twitter.com/#!/ceki
On 20.12.2011 18:34, Peter Kullmann wrote:
Hi,
we had a problem with the performance of our application and it boiled down to very bad performance of the console appender when there is no console (in particular on windows xp).
You can see the whole context of the issue here: http://www.eclipse.org/forums/index.php/m/768740/#msg_768740
Here's the conclusion and the code for my experiments:
package testlogback;
import java.io.FileWriter; import java.io.IOException;
import org.slf4j.Logger; import org.slf4j.LoggerFactory;
public class Main { public static void main(String[] args) throws IOException { Logger logger = LoggerFactory .getLogger("chapters.introduction.HelloWorld1"); long start = System.currentTimeMillis(); for (int i = 0; i< 10000; i++) { logger.debug("Hello world."); } long end = System.currentTimeMillis();
FileWriter fileWriter = new FileWriter("logbacktest.out"); fileWriter.write("Time: " + (end - start) + "\n"); fileWriter.close(); System.out.println("Time: " + (end - start)); } }
On my windows box it prints out "Time: 140" when started as "java -jar testlogback.jar". If I start "javaw -jar testlogback.jar" it uses 100% CPU for about 20 seconds (for effectively doing nothing). This is the case for Sun ire 6 and 7 on windows xp.
On windows 7 the situation is better: javaw uses only about 7 seconds (which is still too much, I guess).
Best regards, Peter
_______________________________________________ Logback-user mailing list Logback-user@qos.ch http://mailman.qos.ch/mailman/listinfo/logback-user