gpt4 book ai didi

c# - 我应该使用 .NET (System.Net.Mail) 来批量发送我的 Web 应用程序的电子邮件还是 SQL (msdb.sp_send_dbmail)?

转载 作者:太空狗 更新时间:2023-10-29 21:30:56 27 4
gpt4 key购买 nike

场景:

1) 我的应用程序是 .NET 3.5 C# 网络应用程序,数据库是 SQL 2008。

2) 电子邮件将在每天 100 到 1000 封之间,并由网络用户与应用程序的各种交互触发。

3) 大多数电子邮件将包含 50KB 到 5MB 之间的附件。有些电子邮件是 HTML,有些是纯文本。

4) 所有附件都将来自网络服务器上的一个目录。

5) SQL 服务器是Web 服务器的独立机器。来自应用程序的所有 SQL 连接都是通过 SQL 登录而不是 Windows 身份验证。

6) 对于可扩展的解决方案,要发送的电子邮件将在数据库表中排队等待批处理处理。失败的电子邮件最多应重试 4 次。

困境:

我不确定是要编写一个网络服务器解决方案来发送电子邮件(例如轮询准备发送的电子邮件的 Windows 服务)还是使用易于设置和使用且不需要的 SQL 数据库邮件很大的发展。

附件位于网络服务器上的事实提示我使用网络服务器解决方案,但我很想看看我是否遗漏了什么。

最佳答案

我认为您已经回答了自己的问题。由于您已选择在数据库 IMO 中对电子邮件进行排队,因此在网络服务器上创建托管解决方案以发送电子邮件几乎没有什么优势。

我要考虑的一件事是您将附件存储在网络服务器上,这意味着网络服务器和数据库之间的网络流量比网络服务器发送电子邮件时要多(假设它们在不同的物理服务器上运行)服务器)。使用您的数字可能是每天 5GB 的附件流量。但是,我会使用数据库解决方案并对其进行严格测试,以查看流量​​是否成为问题。如果是这样,您就不会在数据库解决方案上浪费太多开发时间。

关于c# - 我应该使用 .NET (System.Net.Mail) 来批量发送我的 Web 应用程序的电子邮件还是 SQL (msdb.sp_send_dbmail)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3109700/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com