Performance

James can spool more than 100 mails per second (configured with Maildir mail storage).

We ran following command (from postfix distribution) with only 10 dequeue threads.

time smtp-source -A -C1500 -l 100 -m 100000 -s 500 -d -c -f user@domain.net -t te localhost:25 100000

The result was:

  1. The queuing of the 100000 emails took 8 minutes.
  2. The dequeueing of the 100000 emails took 16 minutes.

We thus have a throughput of more than 100 mails/second.

These numbers are obtained with the out-of-the-box configuration (not optimized). I you run for example (depends on JVM) with -XX:+UseParallelGC -XX:+AggressiveOpts -XX:+UseFastAccessorMethods, you may have 10000 mails enqueued in 38 seconds, which represents 263 mails per second.