c# - 最优架构方案

标签 c# optimization n-tier-architecture

我正在构建一个应用程序,该应用程序(目前)由一个 Web 应用程序 (ASP.NET MVC) 和两个控制台应用程序组成。

Web 应用程序只是用户界面。第一个控制台应用程序是一个以指定时间间隔运行的服务,并抓取多个网页。第二个控制台应用程序负责通过邮件从我的“下载器”发送信息。我的控制台应用程序在不同的计算机上运行。 UI 仅显示下载器的结果。

过程是这样的:

当用户在 UI 中添加要抓取的 URI 时,该 uri 将保存到 SQL Server 表中。我的“下载器”然后选择所有 uris 并抓取它们并将其插入到结果表和邮件队列表中。然后我的“邮件发件人”从邮件队列表中选择所有行并将信息发送给用户。

这是“最佳”解决方案,还是我可以以任何方式优化它?我发现现在很难维护。也许我可以使用 WCF 在我的应用程序之间直接通信?

控制台应用程序在不同计算机上运行的原因是“下载器”需要连接到 VPN,我无法从中发送邮件。

最佳答案

您可以使用 NServiceBus 在服务和 Web 应用程序之间发送消息。

关于c# - 最优架构方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2161048/

相关文章:

asp.net-mvc - MVC 服务层 - 每个 Controller 的服务或其他设计?

c# - 创建DTO时如何避免冗余的业务逻辑(DB fetching)?

model-view-controller - MVC能否取代n层架构或者它是n层架构的一部分

c# - 析构函数中的异步操作

c# - 使用 NHibernate 对象模型(不是 tsql)如何确定列定义是否具有标识集?

c# - 如何在vscode中调试cake项目?

php - 如何删除位于 img/p/的 Prestashop 无用图像

c# - 告诉 Entity Framework 忽略自定义数据库表

mysql查询优化

PostgreSQL - 为什么对大型数据集的一些查询如此缓慢