网络程序设计相关论文.docx

上传人:b****7 文档编号:11054157 上传时间:2023-02-24 格式:DOCX 页数:17 大小:48.48KB
下载 相关 举报
网络程序设计相关论文.docx_第1页
第1页 / 共17页
网络程序设计相关论文.docx_第2页
第2页 / 共17页
网络程序设计相关论文.docx_第3页
第3页 / 共17页
网络程序设计相关论文.docx_第4页
第4页 / 共17页
网络程序设计相关论文.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

网络程序设计相关论文.docx

《网络程序设计相关论文.docx》由会员分享,可在线阅读,更多相关《网络程序设计相关论文.docx(17页珍藏版)》请在冰豆网上搜索。

网络程序设计相关论文.docx

网络程序设计相关论文

基于web服务应用程序设计

随着计算机网络和多媒体技术的迅猛发展,以及现在人们交流的方式有很大一部分依赖于网站,这首先就须要有一个性能健全的Web网站。

可是当一个Web网站刚推出的时候,开发者并不知道将来会有多少人同时访问,以及这个Web网站在同时接受如此多用户的访问时候能否负荷的了。

这就必须要求开发者在此网站正式推出使用之前,必须针对该网站的实际需求作出对应的测试工作,所以Web应用程序的测试方法便应运而生。

一.WEB的基本简介

 一种全局性的信息结构,它将文档中的不同部分通过关键字建立链接,使信息得以用交互方式搜索。

它是超级文本的简称。

  超媒体是超文本(hypertext)和多媒体在信息浏览环境下的结合。

它是超级媒体的简称。

用户不仅能从一个文本跳到另一个文本,而且可以激活一段声音,显示一个图形,甚至可以播放一段动画。

  Internet采用超文本和超媒体的信息组织方式,将信息的链接扩展到整个Internet上。

WEB就是一种超文本信息系统,WEB的一个主要的概念就是超文本连接,它使得文本不再象一本书一样是固定的线性的。

而是可以从一个位置跳到另外的位置。

可以从中获取更多的信息。

可以转到别的主题上。

想要了解某一个主题的内容只要在这个主题上点一下,就可以跳转到包含这一主题的文档上。

正是这种多连接性把它称为WEB。

1.1WEB的起源

最早的网络构想可以追溯到遥远的1980年蒂姆·伯纳斯-李构建的ENQUIRE项目。

这是一个类似维基百科的超文本在线编辑数据库。

尽管这与我们现在使用的万维网大不相同,但是它们有许多相同的核心思想,甚至还包括一些伯纳斯-李的万维网之后的下一个项目语义网中的构想。

在那年的圣诞假期,伯纳斯-李制作了要一个网络工作所必须的所有工具:

第一个万维网浏览器(同时也是编辑器)和第一个网页服务器。

1991年8月6日,他在alt.hypertext新闻组上贴了万维网项目简介的文章。

这一天也标志着因特网上万维网公共服务的首次亮相。

万维网和其他超文本系统有很多不同之处:

万维网上需要单项连接而不是双向连接,这使得任何人可以在资源拥有者不作任何行动情况下链接该资源。

和早期的网络系统相比,这一点对于减少实现网络服务器和网络浏览器的困难至关重要,但它的副作用是产生了坏链的慢性问题。

万维网不像某些应用软件如HyperCard,它不是私有的,这使得服务器和客户端能够独立地发展和扩展,而不受许可限制。

1.2WEB的特点

一、WEB是图形化的和易于导航的(navigate)

WEB非常流行的一个很重要的原因就在于它可以在一页上同时显示色彩丰富的图形和文本的性能。

在WEB之前Internet上的信息只有文本形式。

WEB可以提供将图形、音频、视频信息集合于一体的特性。

同时,WEB是非常易于导航的,只需要从一个连接跳到另一个连接,就可以在各页各站点之间进行浏览了。

  

二、WEB与平台无关

无论你的系统平台是什么,你都可以通过Internet访问WWW。

浏览WWW对你的系统平台没有什么限制。

无论从Windows平台、UNIX平台、Macintosh还是别的什么平台我们都可以访问WWW。

对WWW的访问是通过一种叫做浏览器(browser)的软件实现的。

如Netscape的Navigator、NCSA的Mosaic、Microsoft的Explorer等。

三、WEB是分布式的

大量的图形、音频和视频空间,我们甚至无法预知信息的多少。

对于WEB没有必要把所有信息都放在一起,信息可以放在不同的站点上。

只需要在浏览器中指明这个站点就可以了。

使在物理上并不一定在一个站点的信息在逻辑上一体化,从用户来看这些信息是一体的。

1.3WEB的工作原理

或者其他网络资源的时候,通常你要首先在你的浏览器上键入你想访问网页的统一资源定位符(UniformResourceLocator),或者通过超链接方式链接到那个网页或网络资源。

这之后的工作首先是URL的服务器名部分,被名为域名系统的分布于全球的因特网数据库解析,并根据解析结果决定进入哪一个IP地址(IPaddress)。

二.什么是WEB服务器

WEB服务(WEBservice)是基于XML和HTTPS的一种服务,其通信协议主要基于SOAP,服务的描述通过WSDL,通过UDDI来发现和获得服务的元数据。

2.1大型WEB服务器

在UNIX和LINUX平台下使用最广泛的免费HTTP服务器是W3C、NCSA和APACHE服务器,而Windows平台NT/2000/2003使用IIS的WEB服务器。

在选择使用WEB服务器应考虑的本身特性因素有:

性能、安全性、日志和统计、虚拟主机、代理服务器、缓冲服务和集成应用程序等,下面介绍几种常用的WEB服务器。

  MicrosoftIIS

Microsoft的WEB服务器产品为InternetInformationServer(IIS),IIS是允许在公共Intranet或Internet上发布信息的WEB服务器。

IIS是目前最流行的WEB服务器产品之一,很多著名的网站都是建立在IIS的平台上。

IIS提供了一个图形界面的管理工具,称为Internet服务管理器,可用于监视配置和控制Internet服务。

IIS是一种WEB服务组件,其中包括WEB服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。

它提供ISAPI(IntranetServerAPI)作为扩展WEB服务器功能的编程接口;同时,它还提供一个Internet数据库连接器,可以实现对数据库的查询和更新。

  IBMWEBSphere

  WEBSphereApplicationServer是一种功能完善、开放的WEB应用程序服务器,是IBM电子商务计划的核心部分,它是基于Java的应用环境,用于建立、部署和管理Internet和IntranetWEB应用程序。

这一整套产品进行了扩展,以适应WEB应用程序服务器的需要,范围从简单到高级直到企业级。

2.2小型WEB服务器 

  *支持安全的上级目录过滤

  *支持通用的MIME类型

  *支持简单的目录

  *支持目录列表

  *支持使用index.html作为首页

  *Trailing-slashredirection

  *程序总共代码才200多行

特点:

  *支持GET、HEAD、POST方法

  *支持CGI功能

  *支持基本的验证功能

 *支持通用的MIME类型

  *支持目录列表功能

  *支持使用index.html,index.htm,index.cgi作为首页

  *支持多个根目录的虚拟主机

  *支持标准日志记录

  *支持自定义错误页

  *Trailing-slashredirection

mini_httpd也是相对比较适合学习使用,大体实现了一个WEBServer的功能,支持静态页和CGI,能够用来放置一些个人简单的东西,不适宜投入生产使用。

thttpd中是一个简单,小型,轻便,快速和安全的http服务器.

简单:

它能够支持HTTP/1.1协议标准,或者超过了最低水平

小巧:

它具有非常少的运行时间,因为它不fork子进程来接受新请求,并且非常谨慎的分配内存(性能对比表:

便携:

它能够在大部分的类Unix系统上运行,包括FreeBSD,SunOS4,SolarisBSD/OS,Linux,OSF等等

快速:

它的速度要超过主流的WEB服务器(Apache,NCSA,Netscape),在高负载况下,它要快的多。

安全:

它努力的保护主机不受到攻击,不中断服务器。

WEB服务器控件

WEB服务器控件(WEBservercontrol)属System.WEB.UI.WEBControls命名空间的ASP.NET服务器控件。

WEB服务器控件比HTML服务器控件更丰富、更抽象。

WEB服务器控件在ASP.NET页上有asp标记前缀,例如

Buttonrunat="server"/>。

HTML控件可以通过修改代码将其变成WEB服务器端控件,几乎所有的HTML标记只要加上runat="server",这个服务器控件标识属性后都可以变成服务器端控件。

这与普通HTML标记相比最大的区别在于,服务器端控件可以通过服务器端代码来控制控件的属性。

2.3WEB服务器的发展趋势

目前,WEB服务器的发展有三个主要趋势:

  1.从HTML到XML(ExtensibleMarkupLanguage-可扩展标记语言)

HTML被称为“第一代WEB语言”,如前面的介绍,HTML作为WEB的开发语言,对WEB应用的发展起到了关键性的作用。

但是HTML有一个致命的缺点:

只适合于人与计算机的交流,不适合计算机与计算机的交流。

HTML通过大量的标记来定义文档内容的表现方式,它仅仅描述了应如何在WEB浏览器页面上布置文字、图形,并没有对Internet的信息含义本身进行描述,而信息又是WEB应用中最重要的内容。

通过HTML表现出来的文字、图形内容很容易被人理解,但却不利于计算机程序去理解。

另外,HTML的另一个问题就是它的标记集合是固定的,用户不能根据自己的需要增加标记;而且各种浏览器的规格不尽相同,要使我们用HTML做的网页能够被所有浏览器正常显示,我们只能够使用W3C(万维网协会)规定的标记来创建网页。

使用XML可以解决上述的难题。

W3C对XML作了如下描述:

“XML描述了一类被称为XML文档的数据对象,并部分描述了处理它们的计算机程序的行为。

XML是SGML的一个应用实例。

从结构上说,XML文档遵从SGML文档标准。

”同HTML一样,XML也是一种基于文本的标记语言,都是从SGML(StandardGeneralizeMarkupLanguage,标准通用标记语言)发展而来,二者的不同在于:

XML可以让我们根据要表现的文档,自由地定义标记来表现具有实际意义的文档内容,总起来说,XML具有四大特点:

便于存储的数据格式、可扩展性、高度结构化以及方便的网络传输,这些特点为我们创建开放、高效、可扩展、个性化的WEB应用提供了一个崭新的起点。

2.从有线到无线

 电子商务正在从台式机向着更为广泛的无线设备发展,CahnersIn-Stat市场分析家预测,世界范围内的无线用户的人数将会从2000年的2.71亿增加到2004年的13亿。

Aberdeen集团的研究主任DarcyFowkes认为,采用无线方式进行电子商务的优势并不仅仅在于方便,它还可以节约公司的财力,而且,移动办公能使工作更加高效。

例如,IBM新版本的WEBSphereTranscodingPublisher3.5增加和改进了许多新的特性,可以将企业内部网上的数据翻译到多种无线设备上。

该版本中新的特性包括对更多的无线设备、数据格式的支持,以及语言翻译功能。

它基于Java架构,能把用HTML和XML等标记语言编写的应用程序和数据转换成WML、HDML(HandheldDeviceMarkupLanguage)和iMode等无线设备所能识别的格式,这样,通过手持设备就可以访问互联网上的信息。

无线设备厂商Mobilize也推出了MobilizeCommerce产品,帮助企业进入无线网络。

该软件可以通过无线连接的方式访问企业的内部系统,远程地实现订单发送,并进行确认。

MobilizeCommerce可以充分利用XML对信息进行格式转换,以适合于无线设备,这些无线设备包括笔记本电脑、个人数字助理、无线电话、网络电话和双向寻呼等。

三.有关WEB服务器和应用程序

WEB服务器是应用程序运行的一个基本环境。

如果一个网站只有WEB服务器,是不能运行的,每台电脑都可以通过添加某些组件来组建WEB服务器.其实这只能说有了存放网页的一个基本空间,一个网站除了服务器与网页程序外,还需要域名等要素。

WEB服务器常见的有windows和UNXUNX我接触的少,一般windows使用的是IIS这跟浏览器直接读取与否无关,最先的网页是静态的,后来才出现动态的,也就是你所说的asp什么的,静态的时候浏览器只是被动的接受WEB服务器的数据,动态时代来临,出现了浏览器与WEB服务器的交互,也就是浏览器首先将浏览请求发送给WEB服务器上的程序,程序通过计算将某数据从数据库读出来,用网页的形式再传达给浏览器。

WEB服务器只是一个运行环境,你想这是由谁来完成的,WEB服务器与WEB程序的关系是,什么样的WEB服务器决定了相应的WEB程序,比如,默认的IIS服务只能运行asp而不能运行php和aspx、cgi当然这都是可以安装相应的程序脚本来实现的,所以,如过你去一家IDC买服务器首先要了解该服务器支持什么样的脚本语言。

务器是应用程序运行的一个基本环境。

如果一个网站只有WEB服务器,是不能运行的,每台电脑都可以通过添加某些组件来组建WEB服务器.其实这只能说有了存放网页的一个基本空间,一个网站除了服务器与网页程序外,还需要域名等要素。

WEB服务器常见的有windows和UNXUNX我接触的少,一般windows使用的是IIS这跟浏览器直接读取与否无关,最先的网页是静态的,后来才出现动态的,也就是你所说的asp什么的,静态的时候浏览器只是被动的接受WEB服务器的数据,动态时代来临,出现了浏览器与WEB服务器的交互,也就是浏览器首先将浏览请求发送给WEB服务器上的程序,程序通过计算将某数据从数据库读出来,用网页的形式再传达给浏览器。

WEB服务器只是一个运行环境,你想这是由谁来完成的,WEB服务器与WEB程序的关系是,什么样的WEB服务器决定了相应的WEB程序,比如,默认的IIS服务只能运行asp而不能运行php和aspx、cgi当然这都是可以安装相应的程序脚本来实现的,所以,如过你去一家IDC买服务器首先要了解该服务器支持什么样的脚本语言。

3.1浏览器/服务器架构优点

 浏览器/服务器架构(Browser/Server,简称B/S)能够很好地应用在广域网上,成为越来越多的企业的选择。

浏览器/服务器架构相对于其他几种应用程序体系结构,有如下3方面的优点:

(1)这种架构采用Internet上标准的通信协议(通常是TCP/IP协议)作为客户机同服务器通信的协议。

这样可以使位于Internet任意位置的人都能够正常访问服务器。

对于服务器来说,通过相应的WEB服务和数据库服务可以对数据进行处理。

对外采用标准的通信协议,以便共享数据。

(2)在服务器上对数据进行处理,就处理的结果生成网页,以方便客户端直接下载。

3.2应用程序简介与分类

1应用程序简介

应用程序是指为了完成某项或某几项特定任务而被开发运行于操作系统之上的计算机程序。

应用程序与应用软件的概念不同,但常常因为概念相似而被混淆。

软件指程序与其相关文档或其他从属物的集合。

一般的我们视程序为软件的一个组成部分。

例如:

一个游戏软件包括程序(*.exe)和其它图片(*.bmp等)、音效(*.wav等)等附件,那么这个程序(*.exe)称作“应用程序”,而它与其他文件(图片、音效等)在一起合称“软件”。

应用程序(Application)运行在用户模式,它可以和用户进行交互,具有可视的用户界面。

应用程序通常又被分为两部分:

图形用户接口(GUI)和引擎(Engine)。

在DOS或Windows系统下其扩展名为*.exe或*.com。

2应用程序分类

它有几种分类,即:

单文档、多重文档、基本对话框三种。

给你举例说明一下,单文档就象是记事本,永远中有一个文档窗口,多文档窗口就象是word可以同时打开多个文档窗口,这个也是现在运用最多的,对话框也就是最简单的,用于对话框的设计。

现在单纯的基于对话框使用的很少了,一般还用来编写即时通讯的软件,更多情况是对话框和多文档窗口穿插使用的。

3.3WEB应用程序的特点,应用开发环境,运行模式

3.3.1概述

目前,随着信息技术和网络技术的发展,“信息高速公路”建设已在全球拉开序幕,传统的ClientServer?

?

简称CS?

?

网络应用系统模式在开放性与信息的发布、交流等方面存在很大的局限性,严重影响到仓储管理适应全球性的全方位信息化进程的步伐,CS网络模式已经不适宜用来构建高性能的仓储管理网。

Browser/Server?

?

简称B/S?

?

网络结构模式作为传统CS模式的扩展,为仓储管理的建设提供了崭新的技术手段,开辟了网络建设的新途径。

本文为克服传统的ClientServer的局限性,提出了基于B/S模式和C/S模式结合策略的仓储管理信息系统的总体结构和实现方法。

3.3.2总体设计

在市场经济改革的大潮中,仓储行业为谋求发展,大量的是外协代管物资的保管。

仓库服务的对象是货主,因此整个仓储管理信息系统的出发点应以货主为中心。

货主的管理就成为系统设计的关键技巧。

在总体设计上考虑到业务的复杂性及繁重的客户端计算,为提高管理效率,加强仓储管理系统与外部信息交互,系统设计采用C/S+B/S结构,其结构如图1所示。

1.1B/S模式的模型结构

BS模式,即浏览器/服务器模式,是一种从传统的二层CS模式发展起来的新的网络结构模式,其本质是三层结构CS模式。

1.2B/S模式的工作原理

在B/S模式中,客户端运行浏览器软件。

浏览器以超文本形式向WEB服务器提出访问数据库的要求,WEB服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给WEB服务器,WEB服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的WEB页面形式显示出来。

1.3B/S模式的特点

BS模式管理信息系统基本上克服了CS模式管理信息系统的不足,其主要表现在:

1.3.1系统开发、维护和升级的经济性

对于大型的管理信息系统,软件开发、维护与升级的费用是非常高的,BS模式所具有的框架结构可以大大节省这些费用,同时,BS模式对前台客户机的要求并不高,可以避免盲目进行硬件升级造成的巨大浪费。

1.3.2BS模式提供了一致的用户界面

BS模式的应用软件都是基于WEB浏览器的,这些浏览器的界面都很相似。

对于无用户交互功能的页面,用户接触的界面都是一致的,从而可以降低软件的培训费用。

四.WEB应用程序进行性能调优

了解WEB应用程序的各种组件如何交互,以及在哪些地方可能发现性能瓶颈。

开发人员和管理员都可以从本文受益,因为获得更好的性能是他们的责任。

动态的WEB应用程序能够存储大量信息,让用户能够通过熟悉的界面立即访问这些信息。

但是,随着应用程序越来越受欢迎,可能会发现对请求的响应速度没有以前那么快了。

开发人员应该了解WEB应用程序处理WEB请求的方式,知道在WEB应用程序开发中可以做什么,不能做什么,这有助于减少日后的麻烦。

4.1静态网页工作原理

静态的WEB请求(比如图1所示的请求)很容易理解。

客户机连接服务器(通常通过TCP端口80),使用HTTP协议发出一个简单的请求。

图1.客户机通过HTTP请求静态的文件

服务器解析这个请求,把它映射到文件系统上的一个文件。

然后,服务器向客户机发送一些描述有效负载(比如网页或图像)的响应头,最后向客户机发送文件。

在上面的场景中可能出现几个瓶颈。

如果请求的变化很大,导致无法有效地使用操作系统的磁盘缓存,那么服务器的磁盘会很忙,到了某种程度之后,就会减慢整个过程。

如果为客户机提供数据的网络通道饱和了,就会影响所有客户机。

但是,除了这些状况之外,“接收请求,发送文件”过程还是相当高效的。

通过做一些假设,可以大致体会静态服务器的性能。

假设一个请求的服务时间是10ms(主要受到磁头寻道时间的限制),那么大约每秒100个请求就会使磁盘接近饱和(10msec/request/1second=100requests/second)。

如果要发送10K的文档,就会产生大约8mbit/sec的WEB通信流(100requests/second*10KBytes/request*8bits/byte)。

如果可以从内存缓存中获取文件,就可以降低平均服务时间,因此增加服务器每秒能够处理的连接数。

如果您有磁盘服务时间或平均请求延时的真实数据,可以把它们放进上面的算式,从而计算出更准确的性能估计值。

既然服务器的处理容量是平均请求服务时间的倒数,那么如果服务时间加倍,服务器的处理容量(每秒处理的连接数)就会减半。

请记住这一点,下面看看动态应用程序的情况。

4.2动态网页工作原理

动态应用程序的流程依赖于应用程序的具体情况,但是一般情况下与图2相似。

图2.客户机通过HTTP请求动态页面

与前一个示例中的客户机一样,图2中的客户机首先发出一个请求。

静态请求和动态请求之间实际上没什么差异(有时候.php或.cgi等扩展名可能意味着动态请求,但是它们可能引起误解)。

如何处理请求是由WEB服务器决定的。

在图2中,请求被发送到一个应用服务器,比如运行一个Java™应用程序的Solaris系统。

应用服务器执行一些处理,然后向数据库查询更多的信息。

得到这些信息之后,应用服务器生成一个HTML页面,这个页面由WEB服务器转发给客户机。

因此,这个请求的服务时间是几个部分的总和。

如果数据库访问花费7ms,应用服务器花费13ms,WEB服务器花费5ms,那么网页的服务时间就是25ms。

根据前面介绍的倒数规则,各个组件的容量分别是每秒142、77和200个请求。

因此,瓶颈是应用服务器,它使这个系统每秒只能处理77个连接;超过这个数量之后,WEB服务器被迫等待,连接开始排队。

通过这些示例可以得出以下结论:

在用户发出请求和获得最终页面之间的步骤越多,整个过程就越慢,系统容量就越低。

随着页面请求速率的增加,这种效应会越来越显著。

在项目开始时做出的体系结构决策也会影响站点处理负载的能力。

用于动态站点的N层体系结构。

应用程序(包括WEB应用程序)的体系结构常常按照层来描述。

静态站点可以被看作只有一层——WEB服务器。

如果用WEB服务器运行某种脚本语言(比如PHP),从而连接数据库,那么这可以看作两层。

前一节中的示例有三层,即前端WEB服务器、应用服务器和数据库。

一个软件也可能由多层组成,这取决于您谈话的对象。

例如,PHP脚本可能使用一个模板引擎把业务逻辑与表示分隔开,它可以被看作单独的两层。

Java应用程序可能通过Javaservlet执行表示任务,servlet通过与EnterpriseJavaBean(EJB)通信执行业务逻辑,EJB通过连接数据库获取更多信息。

因此,换一个角度来看,三层体系结构可能是另一副样子,尤其是在涉及不同的工具集时。

4.3常见的体系结构

尽管应用程序的体系结构各不相同,但是有一些常见的体系结构趋势。

在一般情况下,应用程序需要四个功能层:

客户机层

表示层

业务逻辑层

数据层

在WEB应用程序中,客户机层由WE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1