青蛙煮酒论英雄 坐井观天话春秋

导航

Tier 与 Layer的关系

Tier Layer一般都被翻译为,指应用程序的结构,我们听到最多的就是要按三层机构来构造应用程序。在写本文之前,我都一直很迷惑:浏览器属于应用程序的表示层吗?数据库是一个Tier还是一个Layer呢?最近看了一些应用程序体系结构方面的资料,小有心得,说说我目前的理解,欢迎大家指正。

Tier 是分布式应用程序部署时的结构(在微软的ESP2.0里翻译为),如果说某个应用程序是三Tier,那么它肯定可以部署到三台不同的计算机上,当然也可以部署到同一台机器上。在.net框架下,TierTier之间连接的桥梁一般是RemotingWeb Service。浏览器是不需要部署的,所以使用浏览器的客户端不应属于一个Tier,而数据库则属于一个Tier。而Layer指应用程序代码的逻辑结构,一般被设计为三层:表示层、业务逻辑层和数据访问层。浏览器无需编码当然也不属于Layer的范畴。编写应用程序时尽管可能包含存储过程,但存储过程是负责数据访问的,所以数据库不属于一个Layer。一个应用程序无论要部署为几个Tier,只要它访问数据,都可以按这三个Layer来编写。而一个应用程序要想部署为NN大于等于2Tier,则必须包含N1Layer

三层到底指什么呢?我觉得指TierLayer都有道理,如果是指Tier的话,那么它第一个TierWinFormAsp.net,第二个Tier包含业务逻辑Layer和数据访问Layer,第三个Tier就是数据库了。第一和第二个Tier之间用RemotingWeb Service通信。如果指Layer的话代表什么我就不说了,呵呵。

 

posted on 2004-02-15 22:47  青蛙煮酒  阅读(2009)  评论(1编辑  收藏  举报