8.进程间通信的客户机服务器模式(zlp2012)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.3.2 中间件的类型
— 中间件所包括的范围十分广泛,针对不同的应用需求,相应 中间件所包括的范围十分广泛,针对不同的应用需求, 出现多种各具特色的中间件产品。随着软件技术的发展,中间件 出现多种各具特色的中间件产品。随着软件技术的发展, 技术已日渐成熟并商品化,其主要类型有: 技术已日渐成熟并商品化,其主要类型有:
1、什么是中间件
中间件:是位于平台(硬件和操作系统)和具体应用之间的通用服务, 中间件:是位于平台(硬件和操作系统)和具体应用之间的通用服务, 这些服务具有标准的程序接口和协议 中间件是人们为解决分布异构问题提出的一个概念 中间件应具有的特点: 中间件应具有的特点: 一类软件 而非一种软件; 软件, 一种软件 。是一类软件,而非一种软件;需满足大量应用的需要 基于分布式处理的软件 最突出的特点是网络通信 的软件, 网络通信功能 。是基于分布式处理的软件,最突出的特点是网络通信功能 运行于多种硬件和OS平台,不仅仅是实现互连 还实现互操作 OS平台 实现互连, 。运行于多种硬件和OS平台,不仅仅是实现互连,还实现互操作 。支持标准协议和接口 — 中间件已成为许多标准化工作的主要部 中间件已成为许多标准化工作的主要部 对于应用软件开发, 分。对于应用软件开发,不管底层硬件和系 统软件怎样更新换代, 统软件怎样更新换代,只要将中间件升级更 并保持中间件对外的接口定义不变, 新,并保持中间件对外的接口定义不变,应 用软件几乎不需任何修改
8.2.3 客户机/服务器的应用方式 客户机/
1、客户机类应用方式 — 在该方式下,所有的处理均由客户机承担,服务器仅提供文 在该方式下,所有的处理均由客户机承担, 件类服务(磁盘服务、文件服务)和打印服务等) 件类服务(磁盘服务、文件服务)和打印服务等) 2、服务器类应用方式 — 在该方式下,所有的处理均由服务器承担,客户机仅作为仿 在该方式下,所有的处理均由服务器承担, 真终端注册到服务器 客户机/ 3、客户机/服务器类应用方式 — 在该方式下,处理由客户机和服务器共同承担,服务器运行 在该方式下,处理由客户机和服务器共同承担, 后台进程、集中处理作业, 后台进程、集中处理作业, 客户机负责同用户打交道 4、分布处理类应用方式 —在该方式下,多台服务器协 在该方式下, 在该方式下 同承担处理工作
第8章 进程间通信的客户机/服务器模式 进程间通信的客户机/
8.1 进 程
进 程— 是正在执行的一道程序
进程是多任务系统中的概念,是为描述并行发展出来的一种模型; 进程是多任务系统中的概念,是为描述并行发展出来的一种模型; 而多任务系统是一种可以同时运行多道程序的系统 一个程序为实现不同任务,可同时有多次运行活动,每个运行活 一个程序为实现不同任务,可同时有多次运行活动, 动分别被作为不同的进程 进程是一随执行过程不断变化的实体, 进程是一随执行过程不断变化的实体,它们在各自的虚拟地址空 间中运行, 间中运行,并通过一定的机制进行通信 当程序按多任务组织时(在多任务操作系统调度下) 当程序按多任务组织时(在多任务操作系统调度下),系统中就会 生成多个进程,这些进程是同一程序的不同体现且 生成多个进程,这些进程是同一程序的不同体现且并发执行 不同体现
C/S结构适合TCP/UDP工作方式 C/S结构适合TCP/UDP工作方式 结构适合TCP/UDP
—— TCP/UDP工作如图所示: TCP/UDP工作如图所示: 工作如图所示 客户机向服务器的某个端口发报文请求服务, 。客户机向服务器的某个端口发报文请求服务,服务器从收到的请 求报文的源地址识别出客户机的IP地址, 求报文的源地址识别出客户机的IP地址,然后根据决策的结果向 IP地址 客户机方返回服务应答 客户机与服务器之间可以直接联系 也可以通过若干中间件连接 直接联系, 中间件连接, 。客户机与服务器之间可以直接联系,也可以通过若干中间件连接, — 中间连接件是一些标准接口,通常表现为一套API函数 中间连接件是一些标准接口,通常表现为一套API API函数 — 不同的应用有不同的接口,对于数据库应用接口是ODBC等 不同的应用有不同的接口,对于数据库应用接口是ODBC等 ODBC
。消息中间件:用来屏蔽掉各种平台及协议之间的特性,实现应用程序之间 消息中间件:用来屏蔽掉各种平台及协议之间的特性,
适用于事件驱动应用,当一个事件发生时,它通知服务方应该进行何种操作) 的协同(适用于事件驱动应用,当一布于不同计算机上数据的一致性、保障系统处 交易中间件:功能是管理分布于不同计算机上数据的一致性、
8.3.1 中间件的概念
随着应用程序规模不断扩大和网络技术的应用, 随着应用程序规模不断扩大和网络技术的应用,许多应用程序需在网络 环境的异构平台 基础设施层、资源管理层、业务逻辑层、应用表现层) 环境的异构平台(基础设施层、资源管理层、业务逻辑层、应用表现层)上运 行,这样对软件开发提出了新要求 这样对软件开发提出了新要求 在分布异构环境中,存在多种硬件系统平台 多种系统软件及 多种硬件系统平台和 在分布异构环境中,存在多种硬件系统平台和多种系统软件及多种风格 的用户界面(硬件系统可能采用不同的网络协议和网络体系结构连接) 硬件系统可能采用不同的网络协议和网络体系结构连接) 在异构网络环境下编写应用程序,涉及多平台、多协议及多种程序语言 异构网络环境下编写应用程序,涉及多平台、 网络环境下编写应用程序 1) 对某种网络低层编写程序,则依赖该种网络低层技术,难移植 对某种网络低层编写程序,则依赖该种网络低层技术, 2) 网络程序依赖高层协议和网络软件,则编写困难 网络程序依赖高层协议和网络软件, 中间件已成为构建网络分布式异构信息系统不可缺少的关键技术, 中间件已成为构建网络分布式异构信息系统不可缺少的关键技术,与操 构建网络分布式异构信息系统不可缺少的关键技术 作系统、数据库管理系统并列为基础软件体系的三大支柱 作系统、 — 为解决上述问题,引入中间件概念。基本思路是在客户机与服务器或 为解决上述问题,引入中间件概念。基本思路是在客户机与服务器或 应用程序与操作系统之间增加一层可复用的软件,这样通过应用编程接口 应用程序与操作系统之间增加一层可复用的软件,这样通过应用编程接口 API,将低层网络协议与高层实现技术隔离, API,将低层网络协议与高层实现技术隔离,使程序员能将精力集中在应用 软件的设计上。 中间件解决的问题:互联互操作问题) 软件的设计上。(中间件解决的问题:互联互操作问题)
专门针对联机交易处理系统而设计的) 理的效率和负载均衡(专门针对联机交易处理系统而设计的)
。对象中间件:在分布异构的网络计算环境中,可以将各种分布对象有机结 对象中间件:在分布异构的网络计算环境中, 合在一起,完成系统的快速集成。CORBA(公共对象请求代理体系结构 公共对象请求代理体系结构) 合在一起,完成系统的快速集成。CORBA(公共对象请求代理体系结构) 。数据访问中间件:是为建立数据应用资源互操作的模式,对异构环境下的 数据访问中间件:是为建立数据应用资源互操作的模式, 数据库实现联接或文件系统实现联接的中间件 。远程过程调用中间件:通过远程过程调用机制,程序员编写客户方的应用, 远程过程调用中间件:通过远程过程调用机制,程序员编写客户方的应用, 需要时可调用位于远端服务器上的过程
在客户机/服务器模式(体系) —— 在客户机/服务器模式(体系)中,要使用进程概念
8.2 客户机/服务器通信模型(C/S) 客户机/服务器通信模型(C/S)
8.2.1 概 述
随着网络应用的不断深入和网络程序的规模和数量越来越大, 随着网络应用的不断深入和网络程序的规模和数量越来越大,人 们将程序按两大类功能进行设计。这两类程序分别称为客户机程 们将程序按两大类功能进行设计。这两类程序分别称为客户机程 服务器程序,从而形成一种新的软件体系 序和服务器程序,从而形成一种新的软件体系 在上述软件体系中,一个计算任务被分布在两类协作单元上: 在上述软件体系中,一个计算任务被分布在两类协作单元上: 两类协作单元上 ① “前台(front-end) 或 客户机(client)程序 前台(front end)” (front客户机(client) (client)程序 — 用于接待用户,负责提出计算请求 用于接待用户, ② “后台(back-end) 或 服务器(server)程序 后台(back end)” (back服务器(server) (server)程序 — 用于处理客户机程序的请求,并将处理结果回送客户机 用于处理客户机程序的请求, 现代应用程序具有两大功能:向用户提供界面、 现代应用程序具有两大功能:向用户提供界面、进行信息处理 上述特点并非通常意义上的硬件或系统,而是进程, 上述特点并非通常意义上的硬件或系统,而是进程,它们可运行 在一台计算机中,也可运行在两台或多台计算机中(网络环境) 在一台计算机中,也可运行在两台或多台计算机中(网络环境)
客户机 工作站 数据库 服务器
客户机 工作站 数据库 服务器
接口 DBMS功能
接口 分布DBMS功能 局部数据管理
接口 分布DBMS功能 局部数据管理
DB
DB DB DB (b)分布式服务器
(a)集中服务器
集中式服务器结构与分布式服务器结构的区别 集中式服务器结构与分布式服务器结构的区别
8.3 中 间 件(middleware)
C/S模式最明显的特点是客户机的主动性和 C/S模式最明显的特点是客户机的主动性和服务器的被动性 模式最明显的特点是客户机的主动性 C/S模式中 客户机和服务器不是平等工作的,谁先发起通信, 模式中, 在C/S模式中,客户机和服务器不是平等工作的,谁先发起通信, 谁就是客户机
8.2.2 客户机/服务器模式的优缺点 客户机/
—— 目前的计算机网络大部分采用客户机/服务器模式,原因 目前的计算机网络大部分采用客户机/服务器模式, 是它能带来如下一些益处 是它能带来如下一些益处 充分发挥客户端PC的处理能力,很多工作可以在客户端处理后 充分发挥客户端PC的处理能力, PC的处理能力 再提交给服务器。 再提交给服务器。所以它的客户端响应速度快 增强了系统的稳定性和灵活性, 增强了系统的稳定性和灵活性,同时便于维护和应用 能够为作业配备较佳资源, 能够为作业配备较佳资源,减低了系统的开发成本和风险 主要缺点 只适用于局域网, 。只适用于局域网,对客户端的操作系统一般会有限制 客户端需安装专用客户端软件。系统软件升级时, 。客户端需安装专用客户端软件。系统软件升级时,每一台客户 机需重新安装, 机需重新安装,其维护和升级成本非常高
第3篇 计算机网络工作模式
网络的数据链路层是解决网中链路的通信问题 网络的数据链路层是解决网中链路的通信问题 数据链路层是解决网中链路 网络层是从一个网络的全局考虑通信问题 网络的网络层是从一个网络的全局 网络的网络层是从一个网络的全局考虑通信问题 传输层则考虑的是处于网络中的两个主机之间的 网络的传输层则考虑的是处于网络中的两个主机之间 网络的传输层则考虑的是处于网络中的两个主机之间的 通行问题。传输层以上,考虑的是进程间的通信问题 通行问题。传输层以上,考虑的是进程间的通信问题 进程间的通信 — 本篇从网络工作过程中通信两端进程间关系角度出 发,讨论计算机网络的工作原理。内容主要包括: 讨论计算机网络的工作原理。内容主要包括: 。进程间通信的客户机/服务器模式 进程间通信的客户机/ 浏览器/ 。浏览器/服务器模式 。客户/服务器模式应用举例 客户/
中间件应用举例 —开放工控系统的中间件OPC技术 开放工控系统的中间件OPC OPC技术
— OPC全称是OLE for Process Control,它是为基于Windows的应用程序 OPC全称是 全称是OLE Control,它是为基于Windows Windows的应用程序 和现场过程控制应用建立的一种中间件,是一种基于OLE的通信标准。 OLE的通信标准 和现场过程控制应用建立的一种中间件,是一种基于OLE的通信标准。
相关文档
最新文档