什么时候应该使用多层Web应用程序而不是单层Web应用程序?

时间:2011-01-25 01:19:08

标签: asp.net architecture

原始问题

何时应该使用多层Web应用程序而不是单层Web应用程序?

更新我的问题

我接受以下定义来区分“Tier”“Layer”

图层在应用程序(软件)中引用特定的抽象层,其中请参阅这些层的物理住所(硬件)

App.Layer ==“软件”-----合乎逻辑 App.Tier ==“硬件”------物理

层:

1)表示层

2)业务层

3)数据访问层

4)数据层

5)外部系统访问层

层级:

1)表示层(网络服务器)

2)数据层(数据库服务器)

2 个答案:

答案 0 :(得分:3)

让我们先问一下,应用程序是否会保存数据?如果是,那么多个用户是否会同时读取数据?多常?基于这些问题的答案(以及许多其他问题),您可能想要决定数据库是否可行。

就层(UI,数据访问,业务逻辑等)而言,它完全依赖于逐个项目的项目。您是否正在开发用于概念验证的Web应用程序?你期待它维持吗?你相信你团队中的所有开发人员吗?但我的经验法则是总是使用图层,除非我把某些东西放在一起非常快速地证明某些东西或知道它永远不会被维护,我需要快速完成。

如果您决定使用MVC,MVP,MVVM等框架,那么默认情况下您将应用划分为多个层。

请注意,这些部门可帮助您隔离应用的某些方面,从而使您可以轻松使用TDD,关注点分离,可维护性等。

总之,您必须考虑您的要求,目标,团队成员以及短期和长期目标并做出决定。这里没有白色或黑色的答案

答案 1 :(得分:1)

  

何时应该使用多层Web应用程序(Tier ==“Hardware”------ physical)

可扩展性。