gpt4 book ai didi

asp.net - N层和SOA架构有什么区别

转载 作者:行者123 更新时间:2023-12-04 00:04:55 26 4
gpt4 key购买 nike

根据我对 N 层和 SOA 架构的理解。
N层
N-Tier 意味着将应用程序划分为多个层,例如我在 asp.net 中开发应用程序,我将整个 DB 层推送到 WCF,然后它被称为 N 层。 [紧密耦合]
SOA[松散耦合]
根据我对 SOA 的理解,它是一个非常通用的术语,以及我们将架构松散耦合的程度,然后将其称为 SOA。 SOA 服务的最佳示例 - 股票提要/天气提要。
我的结论:
即使我们使用 WCF 开发应用程序,如果它与单个客户端/或 .net 应用程序紧密耦合,并不意味着它的 SOA 只能理解服务。
你能帮助我理解 SOA VS N-Tier。

最佳答案

这两个不能比较,因为每个描述不同的东西。另外,请注意 Tier 与 Layer 不同。
层 - 流程边界。当您构建 3 层应用程序时,您知道 UI、BL 和 DB 将位于 3 个不同的进程中,这些进程可以位于三台不同的机器上。
层 - 逻辑边界。单个层可以包含多个层。这只是您构建应用程序以遵循 OO 原则的方式。
SOA - SOA 应用程序可以是多层的,但通常不是必须的。 SOA 是一种架构应用程序的方法,其含义是可重用的自主互操作远程称为组件。 SOA服务必须遵循four tenets .
为了展示 N 层和 SOA 之间的简单区别,让我们假设您正在使用某些数据库的业务逻辑之上构建一个服务层。看起来您正在构建 N 层 SOA 应用程序,不是吗?不幸的是,并非所有公开服务的应用程序都遵循这些原则。在这种情况下,最关键的可能是“显式服务边界”和“服务是自治的”。如果您的服务在数据库中共享某些业务逻辑功能或数据,则它们没有明确的边界并且它们不是自治的 => 应用程序不是作为 SOA 设计的。
小型 SOA 和大型 SOA 之间也存在差异。提到的应用程序是一个小型 SOA - 每个服务都必须遵循原则。大型 SOA 用于企业集成,您可以将应用程序及其所有服务视为一个必须遵循原则的单元。

关于asp.net - N层和SOA架构有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3488395/

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