十三章节客户机服务器模式与分布式数据库.ppt

上传人:本田雅阁 文档编号:2637200 上传时间:2019-04-25 格式:PPT 页数:56 大小:242.51KB
返回 下载 相关 举报
十三章节客户机服务器模式与分布式数据库.ppt_第1页
第1页 / 共56页
十三章节客户机服务器模式与分布式数据库.ppt_第2页
第2页 / 共56页
十三章节客户机服务器模式与分布式数据库.ppt_第3页
第3页 / 共56页
十三章节客户机服务器模式与分布式数据库.ppt_第4页
第4页 / 共56页
十三章节客户机服务器模式与分布式数据库.ppt_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《十三章节客户机服务器模式与分布式数据库.ppt》由会员分享,可在线阅读,更多相关《十三章节客户机服务器模式与分布式数据库.ppt(56页珍藏版)》请在三一文库上搜索。

1、第十三章 客户机/服务器模式与分布式数据库,C/S计算模式,概念 客户机/服务器概念最早用于软件体系结构 提出请求的应用程序 服务应用的服务程序 协作式处理方式 客户机和服务器都参与一个应用程序的处理 软件成分相互协作完成特定应用功能 请求/服务模式 硬件资源提供软件成分相互协作的设施 客户机/服务器模式,客户机,客户机,客户机,网络,应用 服务器,通信 服务器,打印 服务器,文件 服务器,数据库 服务器,请求,响应,响应,请求,客户机/服务器模式,C/S环境下应用成分的分布,4部分 界面表示逻辑 业务处理逻辑 数据处理逻辑 数据库管理,DB,组成应用程序的四个成分,C/S模式的体系结构(1)

2、,服务器 提供高速大容量的存储能力, 强大的数据处理和管理能力, 运行多个进程能力 文件服务器 数据库服务器 事务服务器 文档服务器,文件,打印机,DB,客户机,中间件,服务器,客户机/服务器模式体系结构示意图,文件,文件服务器,数据,SQL命令,DB,数据库服务器,GUI,应用程序,应用程序事务,客户机,服务器,数据,应用程序 专用事务,DB,事务处理服务器,数据库服务器,C/S模式的体系结构(2),客户机 完成界面表示和一些业务逻辑功能, 非图形化/图形化(GUI)用户接口 面向对象接口(OOI) 公共应用程序 字处理, 报表编制, 图形软件等 数据库前端软件 应用生成和开发软件 Powe

3、rBuilder, VisualC+等 中间件 泛指客户机与服务器之间的软件 数据库, 事务处理, 组件, 对象中间件等,C/S模式定位,C/S模式系统是介于集中式与分布式之间 集中式C/S处理环境 数据集中, 处理分布 客户请求, 服务器响应的协作方式 多服务器C/S处理环境 数据与处理都分布 一个应用可涉及多个服务器数据 一个服务器数据可以被多个客户机访问 对等C/S处理环境 数据与处理都分布 站点可以访问其他站点数据(全局应用), 也可以访问本地数据(本地应用),网络,DB,数据库服务器,DB,数据库服务器,DB,数据库服务器,用户,每个站点是一个单数据库服务器Client/Server

4、结构的DDBS,C/S模式的特点(1),按功能划分 服务器是服务的提供者, 客户机是消费者 共享资源 不对称协议 客户机主动请求服务, 服务器被动等待请求 定位透明性 C/S软件在客户机方屏蔽服务器地址 混合与匹配 C/S软件独立于硬件或OS,C/S模式的特点(2),基于消息的交换 消息式服务请求与响应的媒介 服务封装 服务器决定如何完成服务请求消息, 消息接口不变, 升级对客户没有影响 可扩展性 水平扩展 添加或移去工作站 垂直扩展 移植到更大更快的服务器或多服务器 完整性,C/S模式的优缺点(1),优点 提高了投资效率 使处理和被处理的数据更接近, 减少了网络带宽和成本的需求 具有图形用户

5、界面的PC 支持和倡导标准化和开放系统 多个用户共享硬件资源,C/S模式的优缺点(2),不足之处 在集中式C/S环境, 服务器将成为瓶颈 多服务器应用系统的开发和设计复杂,分布式数据(1),从集中到分布数据的转移 将关键数据的多个副本置于不同站点,提高数据的可用性, 避免“单站点失败”现象 高效的数据访问, 改进数据管理性能 容易增加应用程序, 用户数目和扩大规模 数据放在其产生和频繁使用位置, 减少传输, 提高效率,分布式数据(2),数据分布基本形式 复制数据(Replicated Data) 子集数据(Subset Data) 重新组织的数据(Reorganized Data) 分区数据(

6、Partitioned Data) 独立模式数据(Separate_Schema Data) 不相容数据(Incompatible Data),网络,DB x,主机,DB x1,DB x2,x1和x2为 x的副本,复制的数据,S1,S2,网络,DB ABC,主机,DB A,DB C,子集数据,S1,S3,DB B,S2,网络,DB R,主机,DB A,重新组织的数据,S1,DB B,S2,数据R是由数据A和B 经过重新组织而获得的,网络,地区A 的记录,地区B 的记录,分区数据,地区C 的记录,各地区的记录 具有相同模式,网络,生产 数据,财务 数据,独立模式数据,生产 主机,财务 主机,营销

7、 数据,营销主机,网络,公司A 的记录,公司B 的记录,不相容数据,公司C 的记录,各地区的记录 具有相同模式,分布式数据(3),数据分布技术 人工抽取 快照 复制 分片 数据分布分析,SAVING,CUSTOMER,EXCHANGERATE,SAVING,CUSTOMER,EXCHANGERATE,网络,总行,分行1,分行2,分布式数据的银行应用系统,分行到总行抽取数据,分布式数据 (4),数据分布分析 统计方法 根据应用需求决定那些资源需要分布及存放位置 例子 银行应用系统 客户表存在中央银行(CB)站点, 分行(PB)存有部分数据复制 假设CB站点有10000条记录, 每天读2000次,

8、 更新500次 PB站点有1000条记录,每天读1000次, 更新100次,分布式数据库位置矩阵,分布式数据 (5),该例子分析方法结论 分布式数据的位置取决于逻辑数据和处理(读和更新)模式, 数量等特征 数据分布是降低整个分布式系统开销的有效措施,分布式数据的访问 (1),远程请求 远程事务 分布式事务 分布式请求,分布式数据的访问 (2),远程请求 只涉及单个远程服务器的单个请求 Select * From Server1.BankDB.Customer Where Server1.BankDB.Customer.City = Beijing,SQL语句,CLIENT PB,SERVER1

9、,远程数据请求,分布式数据的访问 (3),远程事务 允许一个事务中包含多个应用同一个远程服务器站点的数据访问请求 Begin Work Select * From Server1.BankDB.Customer Where Server1.BankDB.Customer.City = Beijing Update Server1.BankDB.Branch Set Posted_ind = Yes Commit Work,SQL语句1,CLIENT B1,SERVER1,远程事务处理,SQL语句2,分布式数据的访问 (4),分布式事务 一个事务包含多个数据请求, 每个请求只能访问单个服务器 B

10、egin Work Select * From ServerB1.BankDB.Employee Where ServerB1.BankDB.Employee.Edlevel=MBA Select * From ServerM.BankDB.Empl_MED Where ServerM.BankDB.Empl_MED.Branch=PB Commit Work,SQL语句1,SERVER M,分布式事务处理,SERVER B1,SQL语句2,中央CLIENT,BEGIN WORK COMMIT WORK,分布式数据的访问 (5),分布式请求 一个事务包含多个数据请求,每个请求都可以引用驻留于多

11、个服务器站点数据 Begin Work Select * From ServerB1.BankDB.Employee B1, ServerM.BankDB.Empl_MED M Where B1.Empl_ID = M. Empl_ID AND B1. Edlevel = MBA Update Server1.BankDB.Branch Set Posted_ind = Yes Where Server1.BankDB.Branch = B1 Commit Work,SQL语句1,SERVER M,分布式数据请求,SERVER B1,SQL语句2,CLIENT,BEGIN WORK COMMI

12、T WORK,SERVER 1,ORACLE分布DB(1),1985年起提供用于C/S和S/S的SQL*net 分布式体系结构组成 SQL*Net SQL*Connect ORACLE Server ORACLE Net 联网协议 Oracle8 之前称 SQL Net协议,Oracle8/8i 称Net8协议,Oracle9i称Net协议,UPI,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,OPI,SQL*Net,Transparent Network Substrate,Ora

13、cle Protocol Adapter,Network Software,Network Link,Server,Client Application,Oracle Server,ORACLE分布DB(2),UPI代码包括 分析SQL语句, 语法检验 为SQL打开一个游标 将Client应用程序变量连接到共享Server内存 根据Server数据字典信息描述返回域的内容 在游标空间中执行SQL语句 给Client应用程序取一条或多条记录 关闭游标 OPI有完整功能与UPI对应,ORACLE分布DB(3),SQL*Net的任务是建立和保持Client程序与Server DB间的连接, 并完成两

14、者之间的信息转换 TNS从网络应用程序中接受请求, 并将控制传递给DB服务器,Client,OCI,TTC,NET,OPA,网络协议,OPI,TTC,NET,OPA,网络协议,Server,NPI,网络协议,OCI Oracle 调用接口层 客户机通过调用OCI完成所有SQL处理 TTC 实现与OSI网络协议模型中的表示层一样的功能,完成客户机与服务器之间不同字符集和数据类型格式的转换 NET net层很多子层的集合,相当于OSI中的会话层,建立、维护客户机应用程序和服务器之间的联结和通信 NI 网络接口层 为客户机、服务器和其他外部程序提供对Net的接口访问,处理中断请求 NR 网络路由子层

15、 NN 网络命名子层 NA 网络认证子层 NS 网络会话子层 OPA 网络协议适配层,负责与具体网络协议通信 网络协议 具体的网络传输协议,如TCP/IP OPI 与客户机上的OCI层对应的Oracle编程接口层 NPI 网络程序接口层,负责服务器之间的连接 作为ORACLE联网的基本组件,安装时已自动安装,Oracle Server,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Oracle Server,SQL*Net,Transparent Network Substrate,

16、Oracle Protocol Adapter,Network Software,Network Link,Server,Server,OPI,OPI,C/S网络应用解决方案(1),结构组成 数据库服务器 专门硬件服务器,安装ORACLE9i Database 管理工作站 安装管理客户端工具,管理员在此执行对数据库的日常管理维护 客户机 安装连接工具及客户应用程序,执行业务处理 主要用于基于局域网的应用,如银行储蓄业务、电信收费业务等,C/S网络应用解决方案(1)-续,连接方法 客户机配置文件 tnsnames.ora,存放服务器连接信息,TCP/IP地址、主机名、采用的协议和使用的端口等 M

17、YORACLE= (DESCRITION=(ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=mynetserver)(PORT=1521) (CONNECT_DATA=(SERVICE_NAME=myoracle.mynet) 服务器后台进程(监听器),配置参数在listener.ora文件中 (SID_DESC = (GLOBAL_DBNAME = myoracle.mynet) (ORACLE_HOME = C:oracleora90) (SID_NAME = myoracle) 方案评价 配置简单,但是服务器的地址信息变化需重新对每台客户机配置,C/

18、S网络应用解决方案(2),基于名字服务器的方案 方案结构组成 数据库服务器 专门的硬件,装ORACLE9i Database,需在名字服务器上完成注册 名字服务器 集中管理网络环境中所有的数据库服务器的注册信息,为客户机提供网络名解析服务 客户机 管理工作站,C/S网络应用解决方案(2)-续,连接方法 客户机上指定名字服务器解析网络服务名的方式,向名字服务器获取数据库服务器的连接信息后,直接通过网络向数据库服务器发出连接请求 数据库服务器每次修改配置,需要在名字服务器上注册 名字服务器上保存全局数据库名称及其地址、其他名字服务器的名称及地址 方案评价 在大型Oracle Net网络的规划设计中

19、,优先考虑。用户数大时,名字服务器是瓶颈,C/S网络应用解决方案(3),基于目录服务器的方案 结构组成 数据库服务器 安装后要向目录服务器注册 目录服务器 采用专门协议LDAP(轻型目录访问协议,定义、存储和检索目录信息的标准) 客户机 管理工作站,C/S网络应用解决方案(3)-续,连接方案 客户机上指定连接到特定目录服务器 数据库服务器修改配置,要在目录服务器注册 目录服务器保存全局数据库名称和地址 评价 客户机配置简单,是与大型应用,取代名字服务器,C/S网络应用解决方案(4),基于连接管理器方案 结构组成 数据库服务器 运行在共享服务器模式下 连接管理器 提供3个扩展功能的中间件。包括:

20、 多路复用技术,将多个客户机连接组合在一起,以单个网络连接发送给数据库服务器,以减少网络传输和数据库服务器需要处理的连接数量。 网络访问控制技术,可根据IP地址来接受或决绝客户机对数据库服务器的访问,以限制客户局与服务器的连接 协议转换技术, 使用不同的网络协议的客户机最后转换为数据库服务器能够处理的协议后进行连接 名字服务器 客户机,C/S网络应用解决方案(4)-续,连接方法 客户机上指定连接到特定连接服务器 连接管理器管理客户机和服务器的后台通信。两个进程 CMGW 网关进程,负责向CMADMIN进程注册,监听从客户机来的连接请求 CMADMIN 管理进程,负责处理CMGW进程提出的注册,

21、定位到特定的名字服务器进行解析,并向数据库服务其提交请求 评价 解决网络中存在多种网络协议、连接用户量大,以及需要限制客户机对数据库服务器的访问型应用,C/S网络应用解决方案(5),Web应用 结构组成 数据库服务器 Web应用服务器,可选用Oracle9i Application Server或者第三方的服务器软件,如IIS或Apache等 客户机,C/S网络应用解决方案(5)-续,连接方法 客户机上浏览器向应用服务器通过HTTP协议发出Web请求 应用服务器上配置Oracle Net组件,处理来自客户机的Web请求,通过Oracle Net连接数据库服务器 数据库服务器处理来自应用服务器的请求,返回或提交结果 评价 用于构建瘦客户机应用 客户机通过Java Servlet可以直接访问数据库服务器的两层结构,服务器通过配置,支持HTTP和专用的Internet Inter ORB(IIOP)协议来处理客户机的连接请求,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1