当前位置:首页 » 网络连接 » 计算机网络二层三层架构图
扩展阅读

计算机网络二层三层架构图

发布时间: 2022-08-23 21:04:23

Ⅰ 计算机中二层架构与三层架构分别指什么

CPU中的架构是指CPU对主板接口类型的不同,并不是c/s与b/s模式

Ⅱ 求一张网络三层架构的图

三层网络架构是采用层次化架构的三层网络。

三层网络架构设计的网络有三个层次:核心层(网络的高速交换主干)、汇聚层(提供基于策略的连接)、接入层 (将工作站接入网络)。



(2)计算机网络二层三层架构图扩展阅读:

三层网络结构短板

1、不断地改变的三层网络结构数据中心网络传输模式。

2、网络收敛:三层网络结构中,同一个物理网络中的储存网络和通信网络,主机和阵列之间的数据传输通过储存网络来传输,在逻辑拓扑上就像是直接连接的一样

3、虚拟化:将物理客户端向虚拟客户端转化,虚拟化服务器是未来发展的主流和趋势,它使得三层网络结构的网络节点的移动变得非常简单。

4、如果三层网络结构上主机需要通过高速带宽相互访问,但通过层层的uplink口,会导致潜在的、而且非常明显的性能衰减。三层网络结构的原始设计更会加剧这种性能衰减,由于生成树协议会防止冗余链路存在环路,双上行链路接入交换机只能使用一个指定的网络接口链接。

5、横向网络(east-west)在纵向设计的三层网络结构中传输数据会带有传输的瓶颈,因为数据经过了许多不必要的节点(如路由和交换机等设备)。

Ⅲ 三层架构的具体含义是什么举个例子,谢谢。

三层架构(表现层、业务逻辑层、数据访问层)。表现层即页面展示,是用户所能看到并通过其进行和计算机的额交互;逻辑层是中间层负责进行数据处理和业务逻辑实现,可以看作是对数据访问层进行操作;数据访问层负责逻辑层的结果和数据库数据之间的交互,即对数据库的增、删、读等操作。表现层最好不包含业务逻辑,也可进行部分数据验证(通常是数据格式、类型验证。)
如:计算货物总价,即货物数量乘以单价;逻辑需求其实和货物是什么毫无关系,只是单纯的乘法运算,而业务需求就涉及到具体业务,这两样加起来可看作是业务逻辑层;用于输入数据的界面就是表现层;将计算结果存入数据库中的方法可以看做是数据访问层。
严格意义上的三层架构在现实编程过程中很难实现,因为在编程过程中往往把业务需求混合到逻辑需求中,而很多人不能很好的区分业务需求和逻辑需求,而且在编写代码时在业务中实现逻辑是很方便的。但是这样的后果是后期修改和维护会极不方便,代码也没有可重用性可言。

个人认为实际上三层架构可分为表现层、业务层、逻辑层、数据层,层与层之间可相互独立。

Ⅳ 什么是三层架构各层的主要功能及相互关系有哪些

一般讲到三层架构,其实就是将整个业务应用划分为表示层、业务逻辑层、数据访问层等。
数据访问层DAL,业务逻辑层BLL。表现层UI (界面类的)【 model(数据模型层,主要放的我就不用说了。一般都是数据库中的。) ,】model是贯穿的。所有的都引用它,bll引用dal ui引用dal 和bll 然后就是调用
三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。
普通三层:数据访问层DAL:用于实现与数据库的交互和访问,从数据库获取数据或保存数据到数据库的部分。 业务逻辑层BLL:业务逻辑层承上启下,用于对上下交互的数据进行逻辑处理,实现业务目标。 表示层UI:主要实现和用户的交互,接收用户请求或返回用户请求的数据结果的展现,而具体的数据处理则交给业务逻辑层和数据访问层去处理。业务实体Model:用于封装实体类数据结构,一般用于映射数据库的数据表或视图,用以描述业务中客观存在的对象。Model分离出来是为了更好地解耦,为了更好地发挥分层的作用,更好地进行复用和扩展,增强灵活性。 通用类库Common:通用的辅助工具类
工程模式:简单工厂模式又称为静态工厂方法(Static Factory Method)模式,属于类的创建型模式,通常根据一个条件(参数)来返回不同的类的实例。
工厂角色(Creator)
是简单工厂模式的核心,它负责实现创建所有具体产品类的实例。工厂类可以被外界直接调用,创建所需的产品对象。
抽象产品角色(Proct)
是所有具体产品角色的父类,它负责描述所有实例所共有的公共接口。
具体产品角色(Concrete Proct)
继承自抽象产品角色,一般为多个,是简单工厂模式的创建目标。工厂类返回的都是该角色的某一具体产品。
通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通 讯与中间层建立连接,再经由中间层与数据库进行交换.
完善的三层结构的要求是:修改表现层而不用修改逻辑层,修改逻辑层而不用修改数据层 否则你的应用是不是多层结构,或者说是层结构的划分和组织上是不是有问题就很难说. 不同的应用有不同的理解,这是一个概念的问题.
MVC系统中的模型从概念上可以分为两类――系统的内部状态和改变系统状态的动作。模型是你所有的商业逻辑代码片段所在。本文为模型提供了业务实体对象和业务处理对象:所有的业务处理对象都是从ProcessBase类派生的子类。业务处理对象封装了具体的处理逻辑,调用业务逻辑模型,并且把响应提交到合适的视图组件以产生响应。业务实体对象可以通过定义属性描述客户端表单数据。所有业务实体对象都EntityBase派生子类对象,业务处理对象可以直接对它进行读写,而不再需要和request、response对象进行数据交互。通过业务实体对象实现了对视图和模型之间交互的支持。实现时把"做什么"(业务处理)和"如何做"(业务实体)分离。这样可以实现业务逻辑的重用。由于各个应用的具体业务是不同的,这里不再列举其具体代码实例。
MVC(模型Model-视图View-控制器Controller)是一种设计模式,我们可以用它来创建在域对象和UI表示层对象之间的区分。 同样是架构级别的,相同的地方在于他们都有一个表现层,但是他们不同的地方在于其他的两个层。 在三层架构中没有定义Controller的概念。这是我认为最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是以实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。
在ASP NET中的MVC架构编写的,具有极其良好的可扩展性。它可以轻松实现以下功能: ①实现一个模型的多个视图;②采用多个控制器;③当模型改变时,所有视图将自动刷新;④所有的控制器将相互独立工作。这就是MVC架构的好处,只需在以前的程序上稍作修改或增加新的类,即可轻松增加许多程序功能。以前开发的许多类可以重用,而程序结构根本不再需要改变,各类之间相互独立,便于团体开发,提高开发效率。下面讨论如何实现一个模型、两个视图和一个控制器的程序。其中模型类及视图类根本不需要改变,与前面的完全一样,这就是面向对象编程的好处。对于控制器中的类,只需要增加另一个视图,并与模型发生关联即可。该模式下视图、控制器、模型三者之间的示意图如图2所示。同样也可以实现其它形式的MVC例如:一个模型、两个视图和两个控制器。从上面可以看出,通过MVC架构实现的应用程序具有极其良好的可扩展性,是ASP NET面向对象编程的未来方向。
MVC的不足体现在以下几个方面:(1)增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。(2)视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。3)视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。(4)目前,一般高级的界面工具或构造器不支持MVC架构。改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,从而造成使用MVC的困难。
三层架构是将代码按其作用分成三部分,每部分解决自己负责的流程. 三层架构的功用之处,在于驾驭大型web程序的结构,使之便于管理和扩展.
在设计UI的时候,我们不需要关心其中的逻辑和数据问题,只需要空出对应的位置,用于放置数据. 在设计和修改的时候,要解决的只是HTML的结构,代码看起来干净利落,做起来也是干净利落.
UI直接将程序逻辑的任务丢给BLL,BLL就开始构建具体的实现细节.BLL的创建依赖于业务. 例如一个文章系统,BLL_Aticle就表示它是用于对文章的处理的.BLL_Aticle可以提供给UI一个文章列表的recordset,显示在UI的预留位置. 当BLL_Aticle需要从数据库中获取数据的时候,就将任务丢给DAL层
DAL层专门负责和数据库打交道,它从BLL获取参数,组织一个有效的SQL,建立数据库连接,执行SQL进行更新或获取,将返回的数据交给BLL.
每一部分的业务都集中于一个UI-BLL-DAL的链中,上下清晰了然. 至于是怎样的便于管理和扩展,将在后面结合实例进行分析.
复杂的生命形式必有复杂的生存法则,若想在自己的项目中应用好三层架构,需要多用点心体会其中的应用法则.
我对三层架构的理解还不够深,这些文章能算是抛砖引玉就不错了.大家在阅读当中不要局限于我所构思的法则,要多向具体的应用中去实践,根据具体情况,寻出自己的法则. 有所感悟,就记得写下来,这种感悟是进步的契机,但必然不是最终的结果.有了感悟就拿去应用,可以发现它的优劣,继续完善
三层架构比双层或单层结构都有更大的优势。三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增。开发双层或单层应用时,每个开发人员都应对系统有较深的理解,能力要求很高,开发三层应用时,则可以结合多方面的人才,只需少数人对系统全面了解,从一定程度工降低了开发的难度。
三层架构属于瘦客户的模式,用户端只需一个较小的硬盘、较小的内存、较慢的CPU就可以获得不错的性能。相比之下,单层或胖客户对面器的要求太高。
三层架构的另一个优点在于可以更好的支持分布式计算环境。逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。分布式计算的潜力巨大,远比升级CPU有效。
三层架构的最大优点是它的安全性。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。

Ⅳ 2图示三层架构并说明其特点如何实现每层实现什么功能

2.2.1 WAP工作原理 作为开放性的全球规范,WAP可以使移动用户利用无线电设备方便地访问或交互使用Internet应用信息和服务。前文述及,在Internet中,一般的协议要求发送大量的主要基于文本的数据,而标准Web内容很难在移动电话、寻呼机之类移动通信设备的小尺寸屏幕上显示。同时,在用户单手持机的情况下,屏幕间的内容切换也很不方便,并且HTTP和TCP/IP协议也没有提供针对无线网络的非连续的信号覆盖、长时间的延时以及对有限带宽所进行的优化处理。在Internet中,HTTP协议不是以压缩的二进制方式,而是以效率不高的文本格式发送标题和命令。因此,如果在无线电通信服务中使用普通 Internet协议,则会导致速度慢、成本高且难以大规模应用等问题,而且无线电传输的延时还会造成其他一些问题。 为了解决此类问题,WAP进行了很多优化处理。比如,利用二进制传输经过高度压缩的数据,并对长延时和中低带宽进行优化。WAP的会话功能可以处理不连续覆盖的问题,并能自动地在IP不可用时改用其他优化协议来进行各种信息传输。通过使用WML语言编写网页,WAP还解决了Internet页面不能在移动通信设备上显示的问题。运用WML编辑的网页可在手机的微浏览器上产生按钮、图示及超链接等功能,并可提供信息浏览、数据输入、文本和图像显示、表格显示等功能,大大减小了在移动设备上浏览网页内容的复杂程度。 另外,WAP通过加强网络功能来弥补便携式移动设备本身的缺陷,工作时尽可能少地占用移动通信设备的资源,比如CPU、内存等。与Web对Internet的作用一样,WAP在应用层上隐藏了GSM的复杂性,给用户提供了类似于普通Web页面的友好性。WAP还通过使用类似于javascript的脚本语言WMLScript,来使移动通信设备先将信息进行处理后再发给服务器。WAP还通过无线电话应用WTA来实现呼叫控制等诸多电话功能。 WAP标准下的移动终端均配备了一个微浏览器,该浏览器采用了一种类似于卡片组的工作方式。用户可以通过卡片组来浏览移动网络运营商提供的各项Web业务。工作时,移动终端用户首先选择一项业务,该业务会将卡片组下载到移动终端,然后用户就可以在卡片之间往返浏览,并可进行选排或输入信息,以及执行所选择的工作等。而且,浏览到的信息可以高速缓存,以便供以后使用,卡片组也可以高速缓存并可做成书签以备快速检索之用。该浏览器同时还对电子名片、日历事件、在线地址簿和其他类型内容的格式提供了相应支持。 2.2.2 Internet与WAP的系统架构 为了说明WAP的系统架构,我们先来分析一下普通Internet中Web服务器的工作方式和工作原理。 在图2.2所示的WWW模型中,客户向URL所指定的Web服务器发出 一个请求,Web服务器收到该请求后,经处理即返回相应的内容至客户端。这个过程中,双方是按照HTTP协议进行交互的。客户端发出一个以HTTP开头的URL请求时,Web服务器端处理该请求的程序可能是CGI程序、静态网页,也可能是Servlet程序,甚至可能是其他服务器端的程序,但它们都是以HTML格式将相应的内容返回给客户,这样,客户就可以在浏览器上看到返回的具体内容。 图2.2 WWW模型 WWW模型(图2.2)还同时说明了建立普通应用环境所需的必要配置,主要包括以下几个方面: (1) 标准命名模型。WWW上所有的服务器和内容都是通过Internet标准的信息指定方法进行命名的。 (2) 内容键入。主要指URL的键入,WWW为此定义了若干特定的类型,允许网络浏览器在此基础上进行正确的处理。 (3) 标准内容格式。所有的网络浏览器均支持一组标准的内容格式,包括超文本标记语言HTML、Java描述语言以及其他格式。 (4) 标准协议。标准网络协议允许任何网络浏览器连接到任何网络服务器上。WWW体系中最常用的协议是HTTP协议。WWW的这种基本结构可使用户方便地运行、获取第三方的应用软件及内容服务,并可使开发人员方便地为广大客户创建特定的应用软件和内容服务。 下面我们再来分析WAP的网络架构。WAP网络架构由3部分组成,即WAP网关、WAP手机和WAP内容服务器。其中,WAP网关起着“翻译”协议的作用,是联系GSM网与Internet的桥梁;WAP内容服务器可以存储大量信息,以供WAP手机用户来访问、浏览和查询等;WAP手机为用户提供了上网用的微浏览器及信息、命令的输入方式等。图2.3所示就是WAP模型的基本网络架构。当用户从WAP手机键入想要访问的WAP内容服务器的URL后,信号经过无线网络,以WAP协议方式发送请求至WAP网关,然后经过“翻译”处理,再以HTTP协议方式与WAP内容服务器交互,最后WAP网关将服务器返回的内容压缩、处理成二进制流,并返回到客户的WAP手机屏幕上。编程人员需要解决的问题是编写WAP内容服务器上的程序或者说WAP网页,有关WAP网页的编写方法我们后面会详细介绍的。 图2.3 WAP模型 与WWW模型一样,WAP也定义了一组旨在促进移动终端与WAP内容服务器之间通信的必要配置,主要包括以下几个方面: (1) 标准命名模型。WAP与WWW一样,其服务器和内容都是通过Internet标准的信息指定方法进行命名的。 (2) 内容键入。主要指URL的键入,WAP建立了与WWW一致的内容形式和类型,允许WAP用户代理在此基础上进行正确的处理。 (3) 标准内容格式。WAP基于WWW技术,所用微浏览器也支持一组标准的内容格式,包括WML及其脚本语言、图像、日历信息、电子名片甚至涨价幅度等的格式。 (4) 标准协议。WAP网络协议允许手机中的微浏览器通过WAP网关连接到WAP内容服务器上,满足了移动终端与网络服务器之间传输信息的要求。 关于WAP的网络构架,我们还有几点需要强调说明: (1) WAP的客户端一般都是WAP移动设备,比如最常见的手机。它们通常由不同的公司生产,各自具有不同的特点,所以对WML和WMLScript 的解释也有所不同。因此,将来具体开发时,还要参考各个厂家提供的技术资料,综合考虑不同品牌、型号的WAP手机特点,如Nokia 7110、 Ericsson R380、Motorola L2000www等等,以使开发的网页及应用能为绝大多数的手机所接受。 (2) 一般来说,用户都希望WAP手机的屏幕足够大,分辨率足够高,否则浏览网页时不是太方便。然而由于不同型号WAP手机的屏幕大小并不完全一样,所以开发人员需要考虑针对不同的手机制作不同的网页,或制作含有多种选择的网页,以便使得客户在浏览时同样感到合适、方便和快捷。而且,由于各种手机对WML和 WMLScript的支持情况不太一样,就像Internet Explore和Netscape之间的情况一样,所以开发时更是要考虑不同手机的特殊情况。 (3) WAP手机上网中的安全性问题在开发中也需要考虑,如散射在空间中的电波会同时把用户的口令、密码等重要信息同时散射在空间中。本书后面将专门讨论WAP手机上网的安全性问题。 (4) 网关在WAP系统的整个构架中有着十分关键的作用,它是连接客户和服务的桥梁。网关可以在电信局一端(见图2.4),也可以和网络服务器集成在一起(见图2.5)。图2.4 网关在电信局一端时的结构图 具体开发中,要根据这两种情况采用和实施不同的设计思想及方法。一般来说,如果网关在电信局一端,那么在服务端开发应用程序时与以前的网页开发没有太大的区别。只要符合通用网关接口CGI(Common Gateway Interface)标准,无论是采用Perl、C、C++、Basic、 Dephi或是专门的ISAPI、Serverlit等,开发方法都是一样的。这种情况下开发人员拥有比较大的自由。

Ⅵ 企业局域网的三层架构是怎样的

企业局域网的三层架构:核心层(核心路由器,三层交换机)汇聚层(三层交换机)接入层(二层交换机连接到PC机)。三层架构通常意义上的三层架构就是将整个业务应用划分为:表现层、业务逻辑层、数据访问层。区分层次的目的即为了“高内聚,低耦合”的思想。
1.表现层:通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2.业务逻辑层:针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3.数据访问层:该层所做事务直接操作数据库,针对数据的增、删、改、查。
在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。
三层结构原理:3个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有b/s应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过com/dcom通讯与中间层建立连接,再经由中间层与数据库进行交互。
(6)计算机网络二层三层架构图扩展阅读:核心层
核心层:核心层的功能主要是实现骨干网络之间的优化传输,骨干层设计任务的重点通常是冗余能力、可靠性和高速的传输。网络的控制功能最好尽量少在骨干层上实施。核心层一直被认为是所有流量的最终承受者和汇聚者,所以对核心层的设计以及网络设备的要求十分严格。核心层设备将占投资的主要部分。核心层需要考虑冗余设计。

Ⅶ 两层架构与三层架构的区别,从优缺点角度说明

三层在安全性、稳定性及大量并发控制上要强于两层的,它不会让客户端直接面对数据库,所有减少了由于客户端被破解而给数据库带来损失的风险,并且可以比较妥善的解决多用户并发带来的服务器拥挤,但是在客户端比较少的情况下,它访问数据的速度要慢于两层结构的,开发、维护难度要比两层的大不少,所以对于20客户端以下的应用,应该谨慎使用三层结构开发。

呵呵,网络游戏不可能是两层开发的方式的,那种多数据库服务器、多连接服务器是两层做不到的。如传奇,私服的服务端有十多个程序在完成各项的工作。

Ⅷ 计算机网络问题:比较二层和三层架构客户/服务器模式,分析各自特点,以及适用场合。

1、简单说client直接访问DBserver为两层结构。
client通过中间件等应用服务器访问DBserver为三层结构。
三层结构比两层结构安全。
2、可以这样理解:客户端程序访问服务器的结构叫两层结构。中间加一个事务逻辑处理封装的中间件作为沟通就是三层结构,这样可以均衡数据负载!
3、拷贝一些基础知识你看一下。(没有图片)
附:相关知识
现代社会的软件开发体系结构简单概括就是N层体系结构,这里的N大于等于1。换而言之就是:单机体系(N=1)、Client/Server结构体系(N=2)、多层体系结构(N>2)。下面我们就对这几种体系结构进行简单的介绍和比较。
单机体系:这种软件适用于单机状态,一般情况下是针对某一种单一的应用,如字典软件、翻译软件等等。这种开发方式不适用于综合管理系统的开发。
C/S结构:c/s结构是在局域网上发展起来的,它具有数据集中管理的能力,在出现之初确实解决了很多计算机发展的难题,同时随着4GL语言的发展,用户的界面也比较丰富,在CLIENT端的事物处理能力也使整个系统的性能得到全面的提高,并使管理信息系统(MIS:Management Information System)得到快速的发展。其大概的图例见图1。
我们根据两层结构体系的概念来分解C/S结构的话,可以将他分为表现层(也叫表达层)和数据层。数据层提供数据存放的载体,而表现层则通过一定技术将数据层中数据取出,进行一定的分析并以某一种格式向用户进行显示。在两层体系结构中,表现层对数据库进行直接操作,且大部分的商业处理逻辑(Business Logic,数据之间的关系规则)也在表现层中实现.

图1:Client/Server 体系结构示例

三层体系结构:三层体系结构是N层体系结构的典型,所谓的三层体系结构就是将原来在两层体系结构中的商业逻辑部分从数据层和表现层中提炼出来,形成中间件服务器,所以三层就是:表现层、商业逻辑层(Business Logic)、数据层。在此之外,还有一种系统结构就是分布式系统,其结构系统图见图2。
图2:分布式系统的结构示意图

在分布式系统中,其介于客户端和数据端之间的仅仅是一个应用服务器,它管理客户端的软件,但不做性能调整,比如每一个客户端调用时均产生一个新的数据库连接,而不能够将连接保持形成一个连接缓冲池。虽然在分布式应用中已经结合了一些商业处理逻辑,但是并没有真正改变原来的C/S体系结构。
在三层体系结构中,表现层将主要提供与客户的交互功能,数据层提供系统中的所有的数据保存载体,而商业逻辑层将整个系统中的商业处理逻辑整和在一起,形成中间件,在三层中。中间件起了承前启后的作用,表现层将客户端的请求通过IDL调用中间件,中间件在将其转化成数据处理原则,并从数据库中获得相应的数据,返回给客户端的软件,转换成客户要求的方式显示。关于三层体系结构的示意图见图3。
图3:三层体系结构示意图

我们已经简单的介绍了C/S结构和三层体系结构,有关的优点已经昭然若揭,为了更好的让您了解两者的区别,我们将两者进行一些比较。
C/S结构的缺点:
缺乏有效的集权控制:在众多的C/S软件中我们不难看出,所有的构件不能够在一个地点(如一台机器)进行统一的管理,而不得不将他们分化在各个CLIENT的应用中,使得维护和安全保密均很困难。
缺乏安全性:在分散的计算机系统中,控制信息的访问安全是非常困难的,由于客户端经常需要对一些敏感的数据进行分析导致安全漏洞很容易发生。
客户端工作量重:当将一个应用中的所有的商业逻辑全部在各个客户端来实现的时候,仅仅是使用桌面电脑的客户端资源将发生不堪负载的情况。
软件的重用性差:由于C/S结构下的应用软件一般均是根据操作系统进行定制,且开发工具也是有一定的限定,一旦需要改变某一个要素的话,很可能只能重做,例如原来用C语言来开发,现在需要转向PB进行开发,那么,原来的所有工作都需要重新来过。
随着应用的不断复杂,桌面电脑将需要不断的升级以适应系统的性能需求,甚至有时侯会完全超出桌面系统能够承受的限度。例如:诸如多线程和对称多重处理技术等先进操作系统的特性可能不能在标准桌面电脑系统中提供,不通过访问具有这些技术的服务器,客户端的桌面系统将可能永远不能获得这些新的技术的性能。
针对这些问题,三层体系结构给予了很好的解决方案。
在三层体系结构中,提供在客户端和服务器端进行应用功能的分割,系统通过应用将用户定义的界面系统从商业处理逻辑中分割出去。通过将商业处理逻辑集中在中间件服务器中,将能够减小客户端的工作量并使敏感数据访问控制变得简单。
在三层结构中,客户端将与服务器端的数据变化隔离,简单的说,商业处理逻辑不受客户端的用户界面的改变而影响。三层体系中有一个非常重要的特性就是系统具有良好的组件重用性,例如在PB中开发的组件,可以在VC中进行使用。