Hello Aces,
I would like your opinion on using AEM's email service to send emails.
I have a requirement to send an email to a user based on certain business rules. I can use either ACS Common Email Service or a Java service to send the email.
My question is: Is it ideal to send emails directly from AEM? I’m asking this from a thread pool perspective. There may be a request to trigger up to 500 emails per minute. If I use AEM to send the emails, will it block the thread and impact other activities, such as servicing page requests?
If sending emails directly from AEM blocks the thread, what would be the ideal approach to send emails? Should I consider using middleware for this?
Thanks
Nanda
Views
Replies
Total Likes
Sending emails directly from AEM can impact performance, especially when the volume is as high as 500 emails per minute. Overloading it with tasks like email sending can exhaust resources such as threads, memory, and CPU, potentially affecting its ability to handle core tasks like serving pages or processing workflows.
Offloading email sending to an external service or middleware is the ideal approach for high-volume email scenarios. AEM can send email requests asynchronously to an external service, ensuring that threads are not blocked. Middleware services like Amazon SES, SendGrid are optimized to handle large email volumes.
It's not ideal to send emails directly from AEM when handling high volumes like 500 emails per minute, as it can block the thread pool and impact performance (e.g., slow page loads).
The best approach is to offload email sending to an asynchronous process or an external service.
This way, AEM can focus on serving page requests while emails are sent in parallel.
@Nandujee You might want to consider using external service providers for sending emails on that scale. You could use something like a Amazon SES for your use case.
Views
Replies
Total Likes