ASP.Net 中 4 层架构中的层

问题描述 投票:0回答:1

根据 4 层架构中的 this 文章,业务对象也被视为一层。

在此应用程序中,我们将具有以下 4 层(如博客中所示)

  1. 业务对象 [BO]
  2. 业务访问层[BAL]
  3. 数据访问层[DAL]
  4. UI(4 层)文件夹 [UI]

我想澄清一下,在软件架构中,我们是否将业务对象视为一个单独的层?

我的第二个问题是

如果我们有两层架构,这意味着我们可以有两台物理服务器,一台服务器只能有DB(数据库服务器),另一台服务器将由表示(UI),业务逻辑,数据访问层和业务对象组成。正确吗?

在三层中,我们可以将 UI 层部署在一台服务器 (T1) 上,将业务逻辑、数据访问层和业务对象部署在另一台服务器 (T2) 上,以及数据库独立服务器 (T3) 上。在这种情况下,我们必须创建一个服务(.Net 服务或 WCF 或远程处理)来为 UI 层公开对象。

我不确定 4 层架构。根据 [this] 文章,它描述了 4 个层,包括业务对象 (BO)。我不确定我们是否将 BO 视为一层。

寻求我发现的善意帮助。

asp.net architecture
1个回答
3
投票

通常,层用于表示逻辑分组,而层用于表示物理分组。首先,我通常将其称为 n 层架构而不是 4 层架构。有关层和层的更多信息,请参阅本文

现在,本文中看到的 BO 层实际上就是通常所说的 DTO(数据传输对象),因为它们是 POCO 实体 - 这些被视为横切组件,可以从任何层使用。其他基础设施组件(例如日志记录、审计跟踪等)也属于类似的横切组件。虽然它是一个逻辑组,但它们通常不称为层。

如何在物理组(进程/服务器)中托管层将决定层的数量。因此,您可以将数据库作为一层,将托管 UI/BL/DAL 的应用程序服务器 (IIS) 作为另一层,将浏览器/客户端作为第三层。同样,您可以在应用程序服务器上托管 BL/DAL,在 Web 服务器上托管 UI,从而创建更多层。

© www.soinside.com 2019 - 2024. All rights reserved.