On 1 Jun 2017, at 10:50, Thomas Mortagne
<thomas.mortagne(a)xwiki.com> wrote:
I don't think the time it takes to send a mail is relevant in this
discussion. It's not like there was any choice here, if 100K users
have mail notifications enabled you will have to sent 100K mails, it
does not have any impact on the design of the notification module
side.
What’s important and what I tried to convey in my previous messages is that
users/companies with large needs can use XWiki and not be blocked. If we do one DB query
per user for example they’ll never be able to succeed in sending 100K mails fast. OTOH
they can act at the mail server level by having a farm of mail servers. So we need to
scale and be fast up to the point when we’re ready to send the mails.
If the mail preparation is too slow we may even need to change our architecture/design too
in order to spread the preparation of emails on various XWiki instances or delegate that
to some external processes (by putting the requests on a queue, to be handled by those
external processes). Or at least have a design that allows companies with large needs to
replace our implementation which one that does this. Note that this since XWiki is
component-based it’s probably already possible to do that but we need to make it as easy
as possible and document it.
Thanks
-Vincent
[snip]