分享

三层开发基本概念介绍<一>

 昵称23428 2007-03-28
三层开发基本概念介绍<一>
[作者:coolriver    转贴自:CSDN - 文档中心    点击数:2567    更新时间:2004-8-26    文章录入:admin

三层客户/服务器

一:优点:灵活性和可扩展性。

应用三层开发技术(分布式)的原因

(参考书目: Delphi 5.x分布式多层应用系统篇)

:解决客户机/服务器结构的维护成本问题,改善客户机/服务器结构延展性问题。

客户机/服务器结构支持的用户人数有一定限度(200人以下)。则种结构限制了Internet/Intranet及电子商务的发展。三层开发应用Database Pooling, Object pooling,Resource Pooling,线程模式提供了高度延展性。

:解决应用逻辑重复使用的问题。

例如:当企业要在原有的客户机/服务器结构上添加Web浏览服务时,就需要配置Web服务器,重新编写所有应用逻辑,并且更新MIS系统。在三层结构中,用COM/DCOM, CORBA(Common Object Request Broker Architecture)对象,或Enterprise Java Bean等,封装企业的逻辑程序代码(称之为企业对象),可以解决上述问题。大大降低开发和维护的成本。

:整合不同系统结构的需要,及时应用新技术的需要。

二:Microsoft的三层服务模型

1:结构:windows DNA(distributed internet applications,分布式内部网)COM(component object model ,构件对象模型)构件作为实现系统及应用程序服务的工具。

l         用户服务

l         业务服务

l         数据服务

(1)用户服务windows DNA定义了四种可用于实现用户服务层的客户:

n         标准浏览客户:依赖于简单,基于页面的HTML来管理数据表示和与用户进行交互.其兼容性 很好,功能不丰富。

n         增强型浏览器客户:汲取某个特殊浏览器(ex: Dynamic HTML ,脚本及ActiveX控件)的优点来最大化用户接口的丰富性和功能 ,适用于公司intranet .

n         依赖型Internet客户:能在客户机器上将对Internet的访问和对操作系统的访问集成在一块。

n         增强型Internet客户:Microsoft Office 97Microsoft Visual Studio.

 

(2)业务服务:通过将基于服务器的Microsoft产品与定制的COM构件运行环境集成在一块来实现。

n         Web服务( Microfsoft Internet Information ServerActive Server Pages ).

n         事务和构件服务 (Microsoft Transaction server  COM)  .

n         消息服务(Microsoft消息队列服务器)

n         通用数据访问(universal data access)(Microsoft数据访问过件)

l       大型机环境的互操作(Microsoft SNA服务器).  其详细信息在下面的专题中列出。

 

(3)数据服务:

n         Microsoft SQL Server7数据库。

n         Microsoft Exchange server 5.5版本的目录和信息库。

 

 

专题:

业务服务

:Web服务( Microsoft Internet Information ServerActive Server Pages ).

Web服务对象模型:

1,server对象:提供对服务器上方法和属性的访问.例:问(universal data access)(Microsoft数据访问构件)              setobjmyobject=server.createobject(businessserver.myruleobject)

  2:Session对象: 用来存储一个特定用户会话所必须的信息。

3Application对象:用来使某个应用程序的所有用户共享息。

4Request对象:略。

5:Response对象:.

    

:事务和构件服务 (Microsoft Transaction server  COM)

1:Microsoft事务服务器(MTS)是基于构件的事务处理系统,用来满足复杂事务处理。MTS SQL  Server和任

何基于X/open算法的XA协议的数据库(见注释)

MTS提供的服务有:

n         对分布事务的支持。

n         用于控制实例化和使用对象安全的服务。

n         过程和线程的自动管理。

n         对象实例的管理。

n         数据库连接管理(连接池)

在应用程序中可声明相应的构件完成以上服务。

2MTSSQL server事务一样,要求原子执行,或整个成功,整个失败。Transaction ServerMicrosoft Distributed Transaction Coordinator(MSDTC)交互确认事务满足ACID(原子性Atomicity,一致性Consistency,分离性Isolatation和耐久性Durability)

3:MTSSQL server事务的区别.MTS可以用visual basic ,visual c++ 等封装的MTS构件实现 , Recordset

象的addnew方法添加新行。SQL server事务只能由Transact-SQL代码编写, (ADO).

4:Windows DNA(windows distributed internet application architecture):将客户/服务模式开发与web和在一起的战略 .

使用HTML,DHTML,Active server pages向用户提供第一层(表达层),  MTSMTS的构件, IIS(internet               information server),IIS/ASP构件及ASP脚本占据中间层(业务逻辑层),SQL server作为数据服务层。

5:MTS使用分布事务协调者(Distributed Transaction Coordinator , DTC)事务引擎.DTC使用两级段交付标准。

关于DTC的信息可通过一下方法得到:MMC(Microsoft Management Console)打开c:\winnt\system32\services.msc,

在右边的列表中找到DTC服务,察看其属性。

6:使用MTS最大化系统性能。(注意事项)

n         避免传递或返回对象。

n         尽可能通过值(BY VAL)来传递参数。(By Val关键字使网络间的旅程最小)

n         避免创建数据库游标。少用RecordSet对象。

n         通过使对象包容器线程化(Apartment Threaded)MTS可以在多个对象中执行并发的客户请求。

7:

注释:XA是一种由X/Open组织定义的两相提交协议,允许多个数据库服务期间的事务协同,并将其看作一个事务。(Unix数据库,

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多