2.5.1 计算机运行环境与网络应用体系结构
计算机的工作方式与计算机运行环境密切相关。随着计算机的不断发展,计算机的运行环境也在不断变化,从最早的单机单用户的传统运行环境,发展到今天网络环境下的多种运行模式。不同的运行模式,决定相关联的应用程序协作方式的不同,我们称网络环境下应用程序的运行模式为网络应用体系结构。网络应用体系结构决定网络环境中运行程序之间的关系,决定网络应用程序间的通信模式,操作系统也需要提供相应的、不同的服务。为了了解现代操作系统提供的功能,有必要了解计算机的运行环境。
1.传统中心系统结构模式
计算机刚刚出现的时候(20世纪40年代),计算机资源非常贫乏,计算机运行环境多是单机单用户的集中式模式,称为中心系统结构模式,多个终端共用一个主机、一套内存和外部设备,如图2-38所示,各个终端称为哑终端或哑元,它们只拥有显示器和键盘,没有处理器及内存和外部设备,相应的操作系统是批处理系统和交互式的分时系统,多个用户共享系统处理机时间。
图2-38 传统中心系统结构模式运行环境
2.客户机/服务器模式
随着计算机硬件的发展和丰富,以及计算机网络的出现,计算机的运行环境不再是孤立的单机系统,而是多个计算机互联系统。组成网络的计算机能够共享数据、硬件和软件。互联环境下的计算机根据各个计算机扮演角色的不同、互相通信的模式不同,也分为不同的运行模式,客户机/服务器(C/S,Client/Server)模式是目前网络计算机采取的一种主要运行模式。
所谓客户机/服务器模式是指将某项任务在两台或多台计算机之间进行分配,一般客户机负责与用户交互,接收用户输入,显示和格式化表达数据,而服务器负责向客户机提供各种资源及事务处理的服务,包括通信服务、打印服务、数据服务,等等。在客户机/服务器模式的网络中,一个专门的计算机被指定为网络服务器,其他与之相连的计算机作为客户机,网络服务器提供相应的网络服务。服务器程序通常监听客户对服务的请求,直到一个客户机的连接请求到达为止;此时服务器被“唤醒”,进而为客户机提供服务,对客户机的请求做出适当的响应,运行模式如图2-39所示。在1.2.1节的实验室科研项目管理系统实例中,程序运行在客户机/服务器模式下,客户机程序负责与用户交互,服务器运行数据库管理系统,负责数据管理。
图2-39 客户机/服务器模式计算环境
客户机/服务器模式已经成为当前网络环境下软件的主要工作模式,主要由于该模式具有传统中心系统结构模式所无法比拟的一系列优点。
①均衡利用计算机资源、降低系统通信开销。客户机/服务器模式可以充分利用两端硬件环境的优势,将任务合理分配到客户机端和服务器端来实现,降低了系统的通信开销。
②提高系统吞吐量和响应时间。服务器专门负责事务处理,将结果返回给客户机,客户机专门与用户交互,响应用户的时间缩短。
③灵活性好、易于扩充。理论上,客户机和服务器的数量不受限制,虽然实际上会受网络操作系统功能的限制,但是客户机数量仍然可以达到数百个,而且客户机和服务器的类型可以配置多种。
除了上述优点外,客户机/服务器模式系统存在服务器瓶颈问题及单点失效问题。前者由于服务器事务处理过重,影响整个系统的效率;后者的问题更严重,整个系统的核心过重地依赖于服务器,一旦服务器故障,会导致整个系统失效。
3.对等模式
计算机互联环境下的另一种运行模式是对等(P2P,Peer to Peer)模式。在对等模式下,彼此连接的计算机都处于对等地位,整个网络一般不依赖于专用的集中服务器,网络中的每一台计算机既能充当网络服务的请求者,又能对其他计算机的请求做出响应,提供资源与服务,即每台机器都可以作为客户机或服务器。对等系统由分布在网络中的多个节点来提供服务,从根本上克服了客户机/服务器的瓶颈问题和单点失效问题,并提供了更好的系统性能。任何处于网络中的计算机,都可以加入对等系统。网络节点首先申请加入对等网络,之后就可以开始向网络中的其他节点提供服务或请求服务。
采用对等模式组成的网络构成一个应用层的对等网络,对等网络的定义有很多,不同的组织或团体给出了多种定义,我们采用Intel工作组给出的对等网络定义:对等网络是通过在系统之间直接交换来共享计算机资源和服务的一种应用模式。对等网络的体系结构有3种。
第1代集中式P2P网络,形式上有一个中央服务器,负责记录共享信息,以及回答对这些信息的查询,每一个对等实体根据需要直接在其他对等实体上下载所需信息。虽然形式上与客户机/服务器模式相似,但是本质是不同的,在客户机/服务器模式中,服务器垄断所有的信息,客户机被动读取信息。而集中式对等网络的中心服务器只是存放信息的索引资料。这一代的P2P生命力十分脆弱——只要关闭服务器,网络就不存在了。
第2代完全分布式非结构化P2P网络,没有中央服务器,采用随机图方式形成一个松散的网络,虽然它有较好的容错能力,但是结构复杂,检索速度太慢。
第3代混合型P2P网络,结合了集中式和分布式两种形式的优点,在分布式模式的基础上,将用户节点按能力进行分类,使某些节点担任特殊任务,成为临时的中心节点。对等网络在20世纪90年代后期得到越来越多的应用,并将在分布式计算及网格计算、文件共享与存储、即时通信交流、语音与流媒体等方面有更大的发展。
4.浏览器/服务器模式
浏览器/服务器(B/S,Browser/Server)模式是随着互联网技术的兴起,对客户机/服务器结构的一种变化或改进的模式。浏览器/服务器模式指在WWW(World Wide Web)网络环境下,采用Web协议的信息系统任务分为3个层次完成,一是与用户交互的输入/输出任务,包括浏览、查询、显示等功能,由支持Web的浏览器(Browser)端完成;二是业务逻辑处理任务以及Web协议解析任务,由Web服务器完成;三是信息系统的数据管理任务,由数据库服务器完成。浏览器/服务器模式三层结构如图2-40所示。
图2-40 浏览器/服务器模式计算环境
随着互联网的普及,浏览器/服务器模式逐渐成为网络信息系统的主要工作模式,由其带来的一系列新的开发技术是本书重点讲述的内容。