james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Noel J. Bergman" <n...@devtech.com>
Subject RE: Spooler improperly waking threads
Date Thu, 08 May 2003 19:04:28 GMT
> not exactly the 2.1.3a4, but almost. You committed a change near the same
> time I wanted to setup james, so I downloaded the 2.1. branch source from
> cvs and compiled it.

OK, so you should have the same source from which v2.1.3a4 was built?

> I had the feeling that it did't send some emails immediately, but I
> justify this easily.

What type of spool are you using for the outgoing repository?

The nature of the change is that each time a message is posted to the
repository, a notify is issued to wakeup a waiting thread.  Previously, all
waiting threads would wakeup and race for the right to handle that message.

I am finding the lowest CPU usage when using AvalonSpoolRepository for the
spools.  My test uses postal on an external box to send 1K messages on 20
simultaneous connections to a 400mhz Celeron test server.  All messages are
reflected via RemoteDelivery to an external gateway implementing an SMTP
sink, doubling the total message traffic.  Using AvalonSpoolRepository for
the main spool and the RemoteDelivery spool, and rate limiting incoming
messages to 600 messages per minute (MPM), the test server indicates 4% idle
CPU.  Using JDBCSpoolRepository for both spools, I have to rate limit to 125
MPM to get the same idle CPU.  However, if you push AvalonSpoolRepository
too hard, it can develop a large backlog that is harder for it to handle
than for JDBCSpoolRepository.  At 600 MPM, that starts to develop after a
few minutes.  At 500 MPM, that does not seem to develop in this
configuration.  In fact, 500 MPM leaves 30% idle CPU.  Remember to double
all of the incoming rates, since I am reflecting those messages.

Right now I have been running 500 MPM for hours without developing any
backlog, and with 30% of the CPU idle.

	--- Noel

To unsubscribe, e-mail: james-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: james-dev-help@jakarta.apache.org

View raw message