Hello all,

Thanks to the very nice work of Matthieu and Jean we now have a working
Pulsar implementation for the James Mail Queue component [1]. Koodo!

[1] https://github.com/apache/james-project/pull/808

I did put together an ADR [2] providing details over:

 - Context over MailQueue and its historical implementation
 - Why would someone want Pulsar to back the mailqueue
 - Propose follow up steps for the Pulsar adoption regarding the
distributed James server
 - And finally technical details on this implementation.

[2] https://github.com/apache/james-project/pull/829

I think a good long term objective for the PMC is to drop RabbitMQ in
favor of pulsar (third parties could package their own components using
RabbitMQ if they wishes...)

This means:
 - Solve the bugs that were found during the Pulsar MailQueue review
 - Pulsar MailQueue need to allow listing blobs in order to be
deduplication friendly.
 - Provide an event bus based on Pulsar
 - Provide a task manager based on Pulsar
 - Package a distributed server backed by pulsar, deprecate then replace
the current one.
 - (optionally) support mail queue priorities

While contributions would of course be welcomed on this topic, we could
offer it as part of GSOC 2022, and we could co-mentor it with mentors of
the Pulsar community (see [3])

[3] https://lists.apache.org/thread/y9s7f6hmh51ky30l20yx0dlz458gw259

Would such a plan gain traction around here ?

Best regards,

Benoit TELLIER


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to