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