作为应用程序开发的一部分,如何构建可扩展的邮件通信 [英] How to build scalable email communication system as part of Application development?

查看:146
本文介绍了作为应用程序开发的一部分,如何构建可扩展的邮件通信的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在开发托管在Microsoft Azure云平台中的企业应用程序。当与任何企业公司达成协议时,他们购买相对较高数量用户的许可证。 (每个客户最低5K的员工)

We are developing enterprise application that is hosted in Microsoft Azure cloud platform. When we have a deal with any enterprise company, they buy licences for relatively high amount of users. (min 5K employee per our customer)

我们的应用程序通常需要向客户的某些人群发送电子邮件。
随着客户数量的增加,我们的系统应该发送的电子邮件数量将逐渐增加。

Our application is often needing to send an email to certain population of a customer. As the number of customer(tenant) we have shall grow over time, number of emails that our system supposed to send shall increase gradually.

当前的解决方案我们已经开始受到一些限制,因为我们正在使用一个电子邮件提供商(如Gmail,office365)SMTP服务器来分发电子邮件给我们的客户。由于这些提供商每天发送的电子邮件数量有一些限制,我们最近才开始达到极限。新评新新200新200新200新200新200新200新200新200新200新200新200新新200新新200新新新200新新新200新新新200新新新200新新200新新200新新新200新新200新新200新新200新新
显然创建新的电子邮件帐户不是一个很好的解决方案。

The current solution we have has started to hit some limit since we are using one of email providers (such as Gmail, office365) SMTP servers to distribute the emails to our clients. Since those provider has some limitation interms of number of sent emails per day, we started to hit the limit recently. To overcome this issue we started to send the emails through different email account. Obviously creating new email account is not a good solution.

我们想要的是以中心的电子邮件系统为所有租户提供服务,没有任何问题。如果我们在所有租户中拥有百万终端用户,我们需要发送一百万封电子邮件,那么潜在的解决方案也应该准备好了,我们不需要更改代码,而只能增加电子邮件系统的实例应用程序。

What we want is to have centric email system which will serve to all our tenants without any issue. The potential solution should also be ready for scale-out scenario when we need to send a million email if we have million end-user across all tenants, we should not need to change the code, instead, we can just increase instance of email system app.

我相信Facebook或Twitter的应用程序每天不断发送超过1M的电子邮件。 200新X-45旗新200新新新旗新新旗新新旗新新旗新新旗新新旗新新旗新新旗新新旗旗有没有什么文章,我可以从建设这个系统时学到一些东西。或者您可以建议的任何方法。

I believe the application like Facebook or twitter is keep sending more than 1M email a day. How do you think they are managing these amount of email communication ? Is there any article that I can learn something from when we are building this system. Or any approach you can suggest.

提前感谢。

PS:希望我在写这个问题正确的StackOverFlow社区。

P.S : Hopefully I am writing this question to correct StackOverFlow community.

推荐答案

除了发送大量电子邮件的问题外,您需要担心的另一件事是发送电子邮件不会被收件人的邮件服务器阻止(通常会在云端托管邮件服务器时发生)。

Apart from the issue of sending large number of emails, another thing you would need to worry about is sending emails that don't get blocked by recipient's mail servers (this normally happens when you host your mail servers in the cloud).

我建议您查看 SendGrid 。他们对Azure和AFAIK有特殊计划,每天发送的电子邮件数量没有限制(您只需根据您的电子邮件要求选择一个计划)。您可以在这里了解更多信息: https:// azure。 microsoft.com/en-in/marketplace/partners/sendgrid/sendgrid-azure/

I would recommend looking into SendGrid. They have special plans for Azure and AFAIK there's no limit on the number of emails sent out daily (you just pick a plan based on your email requirements). You can learn more about them here: https://azure.microsoft.com/en-in/marketplace/partners/sendgrid/sendgrid-azure/.

这篇关于作为应用程序开发的一部分,如何构建可扩展的邮件通信的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆