Mark,

FYI, my tests showed socketAppender could handle almost 400 loggingEvents
per second.

Jeroen

-----Original Message-----
From: Mark Womack [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 09, 2002 6:50 PM
To: Log4j-Dev (E-mail)
Subject: Socket Performance?


It just seems that one thing leads to another...I was looking through my
Receiver implementation and decided to run some ad-hoc performance tests.  I
configured 3 processes on my machine: 1 with a SocketReceiver (matches
SocketAppender), 2 with SocketAppenders.  The SocketAppenders both connected
to the SocketReceiver, and all processes also had ConsoleAppender
configured.

I had the SocketAppender processes run simultaneously for 20 seconds.  The
SocketReceiver processed all of the logging events sent across the
SocketAppender/SocketReceiver connection.  I tried various permutations in
the implementation (buffered streams input and output, a event queue in the
receiver, etc).  The best performance I ever tracked (mind you, this was
ad-hoc) ~220 events/second for each SocketAppender process.  This means that
with both processes running, the SocketReceiver was processing about ~440
events/second.

I know that there are a lot of variables that will affect this performance,
and I don't have anything to compare this to.  Does this perfomance compare
to other people's experience sending logging events across sockets?  Do we
have some code we use as a benchmark/test?  We should.

And looking at this performance stuff leads me to the previous discussion
about optimizing the serialization of the LoggingEvent object...I think the
most gains will be made with that work.

-Mark

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to