RemoteDelivery mailet appears to be delivering mail using a single thread. This affects throughput of email delivery significantly.
I'm not very familiar with Apache James but it looks like the cause of this is the processMail method in DeliveryRunnable. The method is blocking and is preventing multi-threaded behavior. Wrapping the contents of the method in a Mono.create speeds up delivery significantly.
However, I'm not sure if this will cause threading issues (maybe it's supposed to be single threaded). So any input appreciated.