基于java的web服务器毕业论文 - 图文 下载本文

基于JAVA的web服务器

摘 要:应用服务器是当前基于Web的软件开发的重要的支撑平台。本文通过研究Web应用服务器的功能需求以及基于组件的软件开发模式,结合JAVA规范和超文本传输协议,设计并实现了基于JAVA的Web应用服务器—DM WAS,为Web客户部署Web应用程序提供支持,从而更加方便地使用DM的数据存储和访问服务。

关键字:JAVA;应用服务器;超文本传输协议;多线程

第一章 绪论

1.1课题背景

随着信息处理流程越来越复杂,需要存取的数据量越来越庞大,数据库逐渐成为存储和处理数据的主要工具,它是许多公司整体业务结构形成的基础。在传统的客户机/服务器两层体系结构中,应用程序的处理在前台的客户端和后台的数据库服务器之间分担,客户端发出数据请求,服务器响应并处理请求,把处理的结果再回送到发出请求的客户端。客户机/服务器结构因为其灵活性得到了较广泛的应用,但对于大型软件系统而言,这种结构在系统的部署、可扩展性和可维护性方面还存在着不足,典型的有胖客户机/瘦服务器和瘦客户机/胖服务器体系结构。Internet的发展给传统应用软件的开发带来了深刻的影响,基于Internet和Web的软件和应用系统无疑需要更为开放和灵活的体系结构。随着Internet/Intranet技术的普及、电子商务技术的发展等,数据库技术又面临着新的挑战,一种新的、更具生命力的体系结构被广泛采用,这就是所谓的三层和多层应用体系模型。一个典型的三层模型由前端客户层、中间服务器层和后端数据库层所组成,在这种模型中,业务逻辑被放到系统服务和用户接口之间的中间层,从而使业务逻辑与用户界面的表示层分开,同时与后端系统保持相对独立性,有利于系统扩展。三层模型具有更好的移植性,可以跨不同类型的平台工作,允许用户请求在多个服务器间进行负载平衡。

在三层和多层应用模型中,应用服务器是最核心的基础软件,国际上许多著名的计算机公司和开放源码组织纷纷推出了各自的产品和系统,如IBM Websphere、BEAWeblogic、Oracle9iAS、SUN iPlanet、开放源码JBoss和ENHYDRA等,这其中有很多是由数据库厂家开发的,以便为企业应用提供整体解决方案。

DM数据库管理系统是华中科技大学数据库与多媒体技术研究所研制的分布式多媒体数据库管理系统。为了满足DM数据库在分布式环境下,特别是多层应用软件体系结构中企业级应用的需求,抢占数据库管理系统前沿技术的制高点,研发支持可扩展标记语言(Extensible Markup Language,XML)的数据库管理系统XDM4和支持XML、符合Java规范的Web应用服务器已成为DM下一步的目标。正是在这一背景下,本课题提出开发支持JAVA标准的Web应用服务

器,为基于Java、XML和数据库的Web应用提供存储、查询、发布数据的能力,并提供部署、运行应用的环境。

1.2 Web应用服务器的定义及功能

1.2.1. Web基本概念

WWW采用Web页面的方式进行信息的存储与传递,Web信息存储在Web站点上,用户通过Web浏览器访问页面。Web页面是由HTML语言编写,并由浏览器翻译解释的。建立Web的愿望是通过易于使用的超文本接口,提供通过的文件共享。完整的Web结构应包括:HTTP协议、Web服务器、通用网关接口、Web应用程序接口、Web浏览器。Web体系结构如图2-1所示。

图2-1 Web体系结构

HTTP协议:HTTP(Hyptertext Transfer Protocol)就是超文本传输协议,是WWW服务的支撑协议,它实现了服务器和客户机间信息交流。Web以两个主要的协议为基础即HTTP及TCP/IP协议。HTTP用于Web浏览器与Web服务器之间的数据交换,浏览器使用超文本标记语言HTML;TCP/IP为网络传输控制协议。HTTP协议工作在TCP协议之上,在很多方面,理解HTTP协议是理解Web的关键。

Web服务器:是指驻留在因特网上某种类型计算机的程序。它是在网络中信息提供者基于HTTP的为实现信息发布、资料查询、数据处理等诸多应用搭建基本平台的服务器,其主要功能是提供网上信息浏览服务。

通用网关接口(CGI):Common Gateway Interface的简称,是在Web服务

器端的一个通用接口,用来调用外部程序进行计数、查询数据库、生成定制的图像,或完成其他任务。其主要的功能是在WWW环境下,从客户端传递一些讯息给Web服务器,再由Web服务器去启动所指定的程序来完成特定的工作。

Web应用程序接口:Web应用程序是运行在服务器端的可执行程序或动态连接库。它们可以响应用户要求,动态产生超文本页面,并将信息提供给客户浏览器。Web应用程序接口就是一组函数,可以帮助开发者借助服务器配置文件中的指令来创建自己的应用程序。这些指令就是服务器执行一个请求的步骤,包括访问授权、根据文件根目录的路径转换、存在性验证、文件类型判别以及服务器的正确执行。

Web浏览器:Web浏览器用于通过URL(Uniform Resource Locator,同一资源定位符)来获取并显示Web网页的一种软件工具。在Windows环境中较为流行的Web浏览器为Netscape Navigator和Internet Explorer。用户也可在AutoCAD等软件的系统内部直接调用Web浏览器进入Web网络世界。 1.2.2 Web的工作机制

Web系统的工作主要就是进行Web页面的交互,一个典型的Web页面有一个基础页面和内嵌的资源对象组成。基础页面一般按照标准的语法结构——超文本标记语言(HTML)书写,而内嵌资源(图象、声音等)的统一资源定位符(URL)则按一定格式包含在基础页面之内[1]。这里从用户的角度来描述Web页面的交互过程。为了显示用户所制定的一个页面,浏览器需要完成下列步骤:

1.浏览器首先需要对URL中所包含的服务器名进行域名解析;

2.服务器与浏览器建立一条到该IP地址的TCP连接,这段时间称为连接建 立时间;

3.浏览器在该TCP连接上向服务器发送HTTP请求,从浏览器发送请求到它收到第一个响应IP包的时间称为请求及响应时间;

4.如HTTP响应的消息多于一个包,从浏览器收到第一个IP包到它收到所有IP包之间的时间称为传送时间;

5.在浏览器得到完整的响应消息后,基础页面的传送就结束了,而浏览器需要分析所获得的页面,并提取出其中包含的资源对象的URL;