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

上传人:沈*** 文档编号:161555754 上传时间:2022-10-14 格式:PPT 页数:56 大小:233KB
返回 下载 相关 举报
十三章节客户机服务器模式与分布式数据库_第1页
第1页 / 共56页
十三章节客户机服务器模式与分布式数据库_第2页
第2页 / 共56页
十三章节客户机服务器模式与分布式数据库_第3页
第3页 / 共56页
点击查看更多>>
资源描述
第十三章 客户机/服务器模式与分布式数据库C/S计算模式 概念 客户机/服务器概念最早用于软件体系结构 提出请求的应用程序 服务应用的服务程序 协作式处理方式 客户机和服务器都参与一个应用程序的处理 软件成分相互协作完成特定应用功能 请求/服务模式 硬件资源提供软件成分相互协作的设施 客户机/服务器模式客户机客户机客户机网络应用服务器通信服务器打印服务器文件服务器数据库服务器请求响应响应请求客户机/服务器模式C/S环境下应用成分的分布 4部分 界面表示逻辑 业务处理逻辑 数据处理逻辑 数据库管理应用程序界面表示逻辑业务处理逻辑数据处理逻辑数据库管理GUI3GL4GLSQLORACLESYBASEDB2DB组成应用程序的四个成分C/S模式的体系结构(1)服务器 提供高速大容量的存储能力,强大的数据处理和管理能力,运行多个进程能力 文件服务器 数据库服务器 事务服务器 文档服务器用户客户机用户客户机用户客户机文件服务打印服务数据库服务文件打印机DB客户机中间件服务器客户机/服务器模式体系结构示意图文件GUI应用程序文件服务器客户机服务器文件服务器GUI应用程序数据库服务器客户机服务器数据SQL命令DB数据库服务器GUI应用程序应用程序事务客户机服务器数据应用程序专用事务DB事务处理服务器数据库服务器C/S模式的体系结构(2)客户机 完成界面表示和一些业务逻辑功能,非图形化/图形化(GUI)用户接口 面向对象接口(OOI)公共应用程序 字处理,报表编制,图形软件等 数据库前端软件 应用生成和开发软件 PowerBuilder,VisualC+等 中间件 泛指客户机与服务器之间的软件 数据库,事务处理,组件,对象中间件等C/S模式定位 C/S模式系统是介于集中式与分布式之间 集中式C/S处理环境 数据集中,处理分布 客户请求,服务器响应的协作方式 多服务器C/S处理环境 数据与处理都分布 一个应用可涉及多个服务器数据 一个服务器数据可以被多个客户机访问 对等C/S处理环境 数据与处理都分布 站点可以访问其他站点数据(全局应用),也可以访问本地数据(本地应用)网络DB数据库服务器客户机客户机客户机用户客户机客户机客户机用户DB数据库服务器DB数据库服务器客户机客户机客户机用户每个站点是一个单数据库服务器Client/Server结构的DDBSC/S模式的特点(1)按功能划分 服务器是服务的提供者,客户机是消费者 共享资源 不对称协议 客户机主动请求服务,服务器被动等待请求 定位透明性 C/S软件在客户机方屏蔽服务器地址 混合与匹配 C/S软件独立于硬件或OSC/S模式的特点(2)基于消息的交换 消息式服务请求与响应的媒介 服务封装 服务器决定如何完成服务请求消息,消息接口不变,升级对客户没有影响 可扩展性 水平扩展 添加或移去工作站 垂直扩展 移植到更大更快的服务器或多服务器 完整性C/S模式的优缺点(1)优点 提高了投资效率 使处理和被处理的数据更接近,减少了网络带宽和成本的需求 具有图形用户界面的PC 支持和倡导标准化和开放系统 多个用户共享硬件资源C/S模式的优缺点(2)不足之处 在集中式C/S环境,服务器将成为瓶颈 多服务器应用系统的开发和设计复杂分布式数据(1)从集中到分布数据的转移 将关键数据的多个副本置于不同站点,提高数据的可用性,避免“单站点失败”现象 高效的数据访问,改进数据管理性能 容易增加应用程序,用户数目和扩大规模 数据放在其产生和频繁使用位置,减少传输,提高效率分布式数据(2)数据分布基本形式 复制数据(Replicated Data)子集数据(Subset Data)重新组织的数据(Reorganized Data)分区数据(Partitioned Data)独立模式数据(Separate_Schema Data)不相容数据(Incompatible Data)网络DBx主机DBx1DBx2x1和x2为x的副本 复制的数据S1S2网络DBABC主机DBADBC子集数据S1S3DBBS2网络DBR主机DBA重新组织的数据S1DBBS2数据R是由数据A和B经过重新组织而获得的网络地区A的记录主机地区B的记录分区数据地区C的记录各地区的记录具有相同模式主机主机网络生产数据财务数据独立模式数据生产主机财务主机营销数据营销主机网络公司A的记录主机公司B的记录不相容数据公司C的记录各地区的记录具有相同模式主机主机分布式数据(3)数据分布技术 人工抽取 快照 复制 分片 数据分布分析SAVINGCUSTOMEREXCHANGERATESAVINGCUSTOMEREXCHANGERATESAVINGCUSTOMEREXCHANGERATE网络总行分行1分行2分布式数据的银行应用系统分行到总行抽取数据分布式数据(4)数据分布分析 统计方法 根据应用需求决定那些资源需要分布及存放位置 例子 银行应用系统 客户表存在中央银行(CB)站点,分行(PB)存有部分数据复制 假设CB站点有10000条记录,每天读2000次,更新500次 PB站点有1000条记录,每天读1000次,更新100次10001002000500READUPDATEPBCB站点操作11002500600NYYYNY123PBCB网络开销数据分布站点配制方法分布式数据库位置矩阵分布式数据(5)该例子分析方法结论 分布式数据的位置取决于逻辑数据和处理(读和更新)模式,数量等特征 数据分布是降低整个分布式系统开销的有效措施分布式数据的访问(1)远程请求 远程事务 分布式事务 分布式请求分布式数据的访问(2)远程请求 只涉及单个远程服务器的单个请求Select *From Server1.BankDB.Customer Where Server1.BankDB.Customer.City =Beijing SQL语句CLIENT PBSERVER1CUSTOMER 远程数据请求分布式数据的访问(3)远程事务 允许一个事务中包含多个应用同一个远程服务器站点的数据访问请求Begin Work Select *From Server1.BankDB.Customer Where Server1.BankDB.Customer.City =Beijing Update Server1.BankDB.Branch Set Posted_ind=YesCommit WorkSQL语句1CLIENT B1SERVER1CUSTOMER 远程事务处理分 行SQL语句2分布式数据的访问(4)分布式事务 一个事务包含多个数据请求,每个请求只能访问单个服务器Begin 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 WorkSQL语句1SERVER MMEDICAL 分布式事务处理SERVER B1CUSTOMERSQL语句2中央CLIENTBEGIN WORK COMMIT WORK分布式数据的访问(5)分布式请求 一个事务包含多个数据请求,每个请求都可以引用驻留于多个服务器站点数据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=B1Commit WorkSQL语句1SERVER MEMPLOYEE分布式数据请求SERVER B1SQL语句2CLIENTBEGIN WORK COMMIT WORKEMPL_MEDBRANCHSERVER 1ORACLE分布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协议UPISQL*NetTransparent Network SubstrateOracle Protocol AdapterNetwork SoftwareOPISQL*NetTransparentNetwork SubstrateOracle ProtocolAdapterNetwork SoftwareNetwork LinkServerClient ApplicationOracle ServerClientUPISQL*NetTransparent Network SubstrateOracle Protocol AdapterNetwork SoftwareOPISQL*NetTransparentNetwork SubstrateOracle ProtocolAdapterNetwork SoftwareNetwork LinkServerClient ApplicationOracle ServerORACLE分布DB(2)UPI代码包括 分析SQL语句,语法检验 为SQL打开一个游标 将Client应用程序变量连接到共享Server内存 根据Server数据字典信息描述返回域的内容 在游标空间中执行SQL语句 给Client应用程序取一条或多条记录 关闭游标 OPI有完整功能与UPI对应ORACLE分布DB(3)SQL*Net的任务是建立和保持Client程序与Server DB间的连接,并完成两者之间的信息转换 TNS从网络应用程序中接受请求,并将控制传递给DB服务器ClientOCITTCNETOPA网络协议OPITTCNETOPA网络协议ServerNPI网络协议OCI Oracle 调用接口层 客户机通过调用OCI完成所有SQL处理TTC 实现与OSI网络协议模型中的表示层一样的功能,完成客户机与服务器之间不同字符集和数据类型格式的转换NET net层很多子层的集合,相当于OSI中的会话层,建立、维护客户机应用程序和服务器之间的联结和通信 NI 网络接口层 为客户机、服务器和其他外部程序提供对Net的接口访问,处理中断请求 NR 网络路由子层 NN 网络命名子层 NA 网络认证子层 NS 网络会话子层OPA 网络协议适配层,负责与具体网络协议通信网络协议 具体的网络传输协议,如TCP/IPOPI 与客户机上的OCI层对应的Oracle编程接口层NPI 网络程序接口层,负责服务器之间的连接作为ORACLE联网的基本组件,安装时已自动安装Oracle ServerSQL*NetTransparent Network SubstrateOracle Protocol AdapterNetwork SoftwareOracle ServerSQL*NetTransparentNetwork SubstrateOracle ProtocolAdapterNetwork SoftwareNetwork LinkServerServerOPIOPIC/S网络应用解决方案(1)结构组成 数据库服务器 专门硬件服务器,安装ORACLE9i Database 管理工作站 安装管理客户端工具,管理员在此执行对数据库的日常管理维护 客户机 安装连接工具及客户应用程序,执行业务处理 主要用于基于局域网的应用,如银行储蓄业务、电信收费业务等C/S网络应用解决方案(1)-续 连接方法 客户机配置文件 tnsnames.ora,存放服务器连接信息,TCP/IP地址、主机名、采用的协议和使用的端口等MYORACLE=(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/S网络应用解决方案(2)基于名字服务器的方案 方案结构组成 数据库服务器 专门的硬件,装ORACLE9i Database,需在名字服务器上完成注册 名字服务器 集中管理网络环境中所有的数据库服务器的注册信息,为客户机提供网络名解析服务 客户机 管理工作站C/S网络应用解决方案(2)-续 连接方法 客户机上指定名字服务器解析网络服务名的方式,向名字服务器获取数据库服务器的连接信息后,直接通过网络向数据库服务器发出连接请求 数据库服务器每次修改配置,需要在名字服务器上注册 名字服务器上保存全局数据库名称及其地址、其他名字服务器的名称及地址 方案评价 在大型Oracle Net网络的规划设计中,优先考虑。用户数大时,名字服务器是瓶颈C/S网络应用解决方案(3)基于目录服务器的方案 结构组成 数据库服务器 安装后要向目录服务器注册 目录服务器 采用专门协议LDAP(轻型目录访问协议,定义、存储和检索目录信息的标准)客户机 管理工作站C/S网络应用解决方案(3)-续 连接方案 客户机上指定连接到特定目录服务器 数据库服务器修改配置,要在目录服务器注册 目录服务器保存全局数据库名称和地址 评价 客户机配置简单,是与大型应用,取代名字服务器C/S网络应用解决方案(4)基于连接管理器方案 结构组成 数据库服务器 运行在共享服务器模式下 连接管理器 提供3个扩展功能的中间件。包括:多路复用技术,将多个客户机连接组合在一起,以单个网络连接发送给数据库服务器,以减少网络传输和数据库服务器需要处理的连接数量。网络访问控制技术,可根据IP地址来接受或决绝客户机对数据库服务器的访问,以限制客户局与服务器的连接 协议转换技术,使用不同的网络协议的客户机最后转换为数据库服务器能够处理的协议后进行连接 名字服务器 客户机C/S网络应用解决方案(4)-续 连接方法 客户机上指定连接到特定连接服务器 连接管理器管理客户机和服务器的后台通信。两个进程 CMGW 网关进程,负责向CMADMIN进程注册,监听从客户机来的连接请求 CMADMIN 管理进程,负责处理CMGW进程提出的注册,定位到特定的名字服务器进行解析,并向数据库服务其提交请求 评价 解决网络中存在多种网络协议、连接用户量大,以及需要限制客户机对数据库服务器的访问型应用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)协议来处理客户机的连接请求
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!