您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 分布式系统之1、序论
分布式系统彭立志E-mail:plz@ujn.edu.cn课程安排周号内容1绪论2通信3通信4进程5十一假期6命名7命名8同步9同步10一致性和复制11容错性12安全性13安全性14分布式文件系统15基于分布式文档的系统16考试参考书•分布式系统——原理与范型作者:ANDREWS.TANENBAUM,MAARTENVANSTEEN译者:杨剑峰常晓波李敏等清华大学出版社•分布式系统——原理与范例(影印版)作者:ANDREWS.TANENBAUM,MAARTENVANSTEEN清华大学出版社•分布式系统概念与设计(第三版)作者:GEORGECOULOURIS,JEANDOLLIMORE,TIMKINDBERG译者:金蓓弘机械工业出版社第一章绪论•概念•分布式系统的硬件体系•分布式系统的软件体系•客户机-服务器模型一、概念分布式系统的概念(1)•一个分布式系统就是:一组独立的计算机的集合,但是这组计算机在用户看来是一个单独的整体的系统。•理解1:分布式•理解2:整体分布式系统的概念(2)一个典型的用中间件构建的分布式系统注意中间件层构建在多个不同的机器上分布式系统的目标•连接用户和资源•透明性分布式系统的一个非常重要的目标就是隐藏分布在多台计算机上的各种资源处理过程。分布式系统呈现在用户或者应用程序面前就象是一台单独的计算机,这种特性称为分布式系统的透明性。•开放性开放性是分布式系统的另一个重要目标。一个开放的分布式系统所提供的服务应当根据标准的规则来定义,这些规则则是用来描述这些服务的符号和语义等。•可扩展性分布式系统的可扩展性至少应该从三个层面上衡量:首先,可以从大小规模上可扩展,这样我们就可以加入更多用户和更多资源;其次,地理上可扩展,意味着用户或资源可以位于地理上很远的地方;第三,管理的可扩展性,指系统存在多个独立的管理机构时,整个系统依然容易管理。分布式系统的透明性透明性描述访问隐藏资源的表现形式以及访问方式的差异位置隐藏资源的物理位置迁移隐藏资源的迁移行为,即使资源发生了迁移,对用户是不可见的重定位资源即使在使用时发生迁移,对用户依然是不可见复制隐藏资源是否被复制并发隐藏资源被多个用户共享的细节故障隐藏资源的错误及其恢复细节持久性隐藏资源(一般指软件资源)的存储细节,用户不需要关心资源是存储在内存中还是磁盘中,还是在其他存储介质中。分布式系统透明性的不同形式二、硬件基本概念•尽管分布式系统都是基于多个CPU,但这些CPU怎么组织,怎么互连,怎么通信却有不同的方式。•两种基本的分布式计算机系统:多处理器系统和多计算机系统。•多处理器系统:有共享内存,所有CPU共享一个唯一的物理地址空间。•多计算机系统:无共享内存,每个CPU都有自己自有的内存。多计算机系统又分为同构多计算机系统和异构多计算机系统。分布式系统硬件组织方式分布式计算机系统中的不同组织方式三、软件(操作系统)两种基本分布式系统的操作系统•与分布式系统的硬件概念相对应,分布式系统的操作系统也可以大致分为两类:紧耦合系统和松耦合系统。紧耦合系统:对系统所管理资源用一个单一的全局的方式实现。松耦合系统:一组运行各自不同的操作系统的计算机,但它们通过一定方式协作,使得它们各自的服务和资源相互可用。•紧耦合的操作系统一般称为分布式操作系统。用于多处理器系统和同构多计算机系统。•松耦合的操作系统一般称为网络操作系统,用于异构多计算机系统。•在实际的网络操作系统中,为提高系统的分布式特性(一般是透明性),产生了中间件,并逐渐成为现代分布式系统中的核心。几种分布式系统的简单比较•DOS(DistributedOperatingSystems)、NOS(NetworkOperatingSystems)、中间件的基本特性比较系统描述主要目标分布式操作系统DOS适应多处理器和同构多计算机系统的紧耦合操作系统隐藏及管理硬件资源网络操作系统NOS适应异构多计算机系统(LAN或者WAN)的松耦合操作系统为远程客户端提供本地服务中间件在NOS操作系统上的附加层,实现一般意义的服务提供分布式透明特性两种分布式操作系统•多处理器操作系统(MultiprocessorOperatingSystem)管理多处理器计算机系统的资源•多计算机操作系统(MulticomputerOperatingSystem)同构计算机系统的操作系统多计算机操作系统的一般结构网络操作系统•不同于分布式操作系统,网络操作系统不要求:1、底层硬件同构2、整个系统作为一个单一系统管理•网络操作系统往往基于异构的硬件平台和异构的软件操作系统,各异构系统之间通过网络互连。网络操作系统提供一系列工具,允许用户使用指定主机上的服务。网络操作系统的结构网络操作系统例中间件(1)•分布式操作系统具有较好的透明性和易用性,但没有对相互独立的计算机集合的操作处理能力。•网络操作系统有良好的可扩展性和开放性,但对透明性和易用性比较差。•现代分布式系统广泛使用的的技术:在网络操作系统之上增加一个中间层,屏蔽各底层平台之间的异构性,从而增加分布式系统的透明性。这样的中间层就称为中间件。中间件(2)基于中间件的分布式系统的架构中间件模型•为使得应用程序开发和集成尽可能简单,大部分中间件都基于一定模型来描述系统分布特性和通信。•最简单的模型是把所有的资源和设备都当作文件来对待处理。例如:unix中将键盘、鼠标和网络接口等等,统统当作文件来处理。这样使得系统具有比较好的透明性、开放性和可扩展性。•另一种类似的模型是分布式文件系统(DFS)。•远程过程调用(RPC)是另外一种重要的中间件模型。在这种模型中,允许一个进程调用在远程主机上实现并在远程主机上执行的过程(一般是指函数)。•分布式对象模型:允许用户实例化位于远程主机上的对象,并调用它们的接口,就像使用本机的对象一样。•分布式文档模型:资源以文档的形式分布,通过特定协议管理和获取。最典型的实例是Web。中间件服务•所有的中间件都通过提供一组高级别的通信工具集来隐藏底层操作系统通过计算机网络进行消息传递的细节,以此实现访问透明性。由此衍生出中间件系统一些所共有的服务。•所有中间件所共同具有的一个重要服务——命名服务:命名服务允许一个实体在整个分布式系统范围内共享并被查找(就像在目录中查找文件一样)。例如在Web上任一Web文档就被命名为它的URL。•许多中间件系统为存储提供了另一种重要的服务——持久性服务。当然更高级的中间件系统集成了数据库或者连接数据库的手段来实现数据存储。•如果一个分布式系统中数据存储至关重要,则分布式事务就必不可少。•安全性:当然对任何开放的系统都必不可少。不同分布式系统之间的比较比较项分布式操作系统网络操作系统基于中间件的操作系统多处理器多计算机透明性程度非常高高低高所有节点运行相同的OSYesYesNoNoOS拷贝1NNN通信的基础共享内存消息文件模型指定资源管理全局的,集中的全局的,分布式的每节点每节点可扩展性无适度地可扩展可变的开放性无无有有四、客户端-服务器模型客户端-服务器模型(1)•客户端-服务器(client-server,简称C-S模型)模型是所有分布式系统进程组织的基本模型。•在基本的C-S模型中,分布式系统的进程分为两种:服务器——实现并提供指定服务;客户端——通过向服务器发送服务请求,最终获取服务。客户端-服务器模型(2)•典型的客户端和服务器的交互流程C-S模型应用程序的组织•通常,C-S模型应用程序按三个级别组织:1、用户界面层2、处理层3、数据层•用户界面层。用户界面层一般在客户端实现。•处理层。处理层是介于用户界面和数据之间的一个中间层,它由模型的核心函数组成。这些核心函数处理数据层提供的数据,并把处理结果作为服务提供给用户界面层。•数据层。C-S模型中的数据层负责操纵管理模型的实际数据。数据层可以是简单的文件系统,但更一般更高级的形式是数据库系统。C-S模型应用程序的组织典型的C-S模型组织:因特网搜索引擎客户机-服务器架构多阶层架构现代架构•垂直分布。将逻辑上不同的部件部署到不同的主机上。•水平分布。在这种架构中,客户端或者服务器被物理划分为相同的部分,但每个部分都有它自己的完整数据集,以此平衡系统负载。•p2p分布(peer-to-peer)。没有服务器现代架构一个典型的采用水平分布的web服务五、作业•分布式系统的透明性包含哪些特性?并简要阐述这些特性•简述分布式操作系统和网络操作系统的概念,以及它们的差别。•简述基本的客户端-服务器模型的交互流程。•C-S模型应用程序的三个级别中,处理层的作用是什么?•多处理器操作系统与多计算机操作系统的通信方式有什么差别?
本文标题:分布式系统之1、序论
链接地址:https://www.777doc.com/doc-3539795 .html