从结构上讲是:客户端-应用服务器-数据库服务器
从功能上讲是:
客户端-操作请求;
应用服务器-封装业务逻辑;
数据库服务器-数据存储及数据处理;
现在流行的三层结构一般在中间层说法比较多,可以是一个多层结构,多通过COM/DCOM实现
由MTS管理!

解决方案 »

  1.   

    也就是说
    输入输出 、业务处理 、 数据库处理
    在客户端只进行输入输出的处理
    数据库端只进行数据的处理
    具体的业务放在了中间层,一般是用com/dcom 实现
    是吗?
    但我不懂,怎样才能合理的划分这三层呢,怎样从业务中把输入输出隔离出来呢?有怎样建立这样的关系呢?使用什麽来传递数据(如c/s可以通过odbc连接)客户端与应用端通过什麽来连接,应用端又通过什麽来连接数据库端???
    mts是什麽???
    谢谢指教!!!
      

  2.   

    一定要用com吗,如果不会com是否就不能三层了?
      

  3.   

    中间件的技术多了,windows下一般是用com/dcom,使用java的话可以用j2ee,分布式应用的corba,还有专门的中间件如bea的tuxedo。
      

  4.   

        所谓三层只是一个不太规范的说法,严格的说应该是多层c/s(multi-tie c/s),而且中间层的说法也不甚科学,其范围太大;要设计三层架构就必须将企业逻辑抽取出来,这可不是件容易的事,也没有很强的设计理论依据,大多靠系统分析员的经验。
      

  5.   

    客户端用IE,就称为B/S(多层的一种)
      

  6.   

    在nt下iis是web server
    那麽什麽软件可以作应用服务器呢?客户端与应用服务器端通过什麽来连接(或者是web server 与 应用服务器怎样相连),应用服务器端又通过什麽来连接数据库端???是否三层结构客户端就不用安装database client
      

  7.   

    有很多种,如你需要的基于数据库应用的三层结构:接入层,业务逻辑层,核心数据层。
    关键点在于我们为什么要用三层结构或多层结构:
    主要是满足系统的可扩展性,系统的安全性等等。因为三层结构实现了核心数据对系统接入
    的透明性。而另一方面业务逻辑层采用软构件思想设计,动态扩展性很好。所以广泛应用在
    诸如银行,电信等系统集成中。
    除了基于数据库中间件(如主流产品:IBM的CICS与BEA的tuxedo)的三层结构外,还有基于类似
    IBM的MQ Server的网络传输三层结构。国内外有很多中间件的厂商,昨天就是BEA公司的主流产品
    Weblogic的发布会。
    还要知道更详细吗?Call me :93010433 OICQ
    Best Wishes!
      

  8.   

    哦,不好意思,我忘了,还有很多,如我们现在广泛使用的B-A-S结构:典型的选型:JPS-Weblogic-Tuxedo-Database.
    Or C-A-S : Delphi - CICS/Tuxedo - Oracle/Sybase/Informix
      

  9.   

    So, what are u realy want to do is a question.
      

  10.   

    三层次C/S结构的优越行主要体现在:
    减少数据库并发用户
      二层C/S结构之所以无法满足成百上千用户同时联机的需求,是因为大量的数据库并发连接消耗了很多宝贵的数据库服务器资源,从而使并发连接的使用效率非常低。事实上,WEB服务器采用HTTP协议是一种无连接的协议,浏览器只有在请求时才和WEB服务器连接,取到结果后马上结束此连接。只有采取这种无连接模式,才可能同时为几百、几万甚至更大的并发请求服务,所以三层次结构可以通过共享数据库连接的方式,来明显地减少数据库并发连接数。
    减少网络开销
      若将二层C/S结构从LAN移到一个复杂的应用环境中,这时客户机与数据库服务器往往不在同一个比较高速的网络上,需要通过广域网甚至拨号线路来实现连接,而这种通信一般并非有效,一次数据库操作需要在客户机与服务器之间交互若干次,而应用服务器与客户机只需一次交互。假设客户机与服务器每次交互的平均时间为Tc,应用程序服务器与数据库服务器每次交互的平均时间为Ts,交互次数为n,由于三层次结构接受用户请求会将结果一次返回,所以当n较大时二层结构耗时(n*Tc)就远大于三层结构耗时(Tc+n*Ts)(这里Tc>>Ts)。
    消除数据库瓶颈
      由于客户机与服务器通常不在同一个局域网上,而应用程序服务器与数据库服务器往往在高速局域网,甚至是在同一台主机,故Tc>>Ts。虽然数据库的并行系统不能有很大的并发度,但应用程序服务器却无此限制,当应用程序服务器成为瓶颈时,可以任意增加应用程序服务器数目,由多台应用程序服务器同时为终端客户服务,实现平衡负载,同时提高系统的整体可靠性。当数据库瓶颈不可逾越时,可以由应用程序服务器上的应用来实现用分类过的数据来访问不同的数据库,由多个数据库实现应用级的一个逻辑数据库,这可在一定程度上消除数据库服务器的瓶颈。
      

  11.   

      各位:  
       有没有一个三层程序的框架,我也会分层,但是在中间层加上数据对象,如一个定单对象,我就是不会处理数据流动,总觉的 得到数据,处理数据,显示数据 太麻烦,要是界面上有一个DBGrid来显示定单中的内容,就更麻烦了,所以中间层的数据处理我就是想不明白。 能不能公布一个程序框架大家学学。