当前位置: 澳门新濠3559 > 服务器运维 > 正文

服务器将处理该请求并将文件发送到该浏览器上

时间:2019-11-18 21:29来源:服务器运维
作为一种资源的组织和表达机制,Web已成为Internet最主要的信息传送媒介。因此Web的性能已经成为判断一个网站成功与否的一个重要评估标准。而Web服务器则是决定Web性能的重要环节。

作为一种资源的组织和表达机制,Web已成为Internet最主要的信息传送媒介。因此Web的性能已经成为判断一个网站成功与否的一个重要评估标准。而Web服务器则是决定Web性能的重要环节。

Web服务器概述
  Web系统在现在网络中广泛使用,而Web服务器则是Web系统的一个重要组成部分。完整的Web结构应包括:HTTP协议,Web服务器,通用网关接口CGI、Web应用程序接口、Web浏览器。
  Web服务器是指驻留在因特网上某种类型计算机的程序。它是在网络中信息提供者基干HTTP的为实现信息发布、资料查询、数据处理等诸多应用搭建基本平台的服务器,其主要功能是提供网上信息浏览服务。当Web浏览器(客户端)连到服务器并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。
  Web服务器在web页面处理中大致可分为三个步骤:第一步,web浏览器向一个特定的服务器发出Web页面请求;第二步,Web服务器接收到web页面请求后,寻找所请求的web页面,并将所请求的Web页面传送给Web浏览器;第三步,Web服务器接收到所请求的web页面,并将它显示出来。
web服务器不仅能够存储信息,还能在用户通过Web浏览器提供的信息的基础上运行脚本和程序。在Web上,常见的大多数表单核搜索引擎上都是用的是CGI脚本。

在对Web服务器进行优化时要根据真实的Web应用系统的情况和特征来采取有针对性地优化方案。首先根据不同的网络特性来看:在局域网中,降低M T U (最大传输单位)值对可以避免复制数据和求校验,而通过优化select系统调用或在Socket事件处理器中执行计算可以优化请求并发管理,利用HTTP1.1持续连接等都可以使系统性能得到相应的改善,但在广域网的环境下却没有什么大的作用,有的甚至恰恰相反。

web知识的梳理web系统的构架1.B/S vs C/S(Browser/server    Client/Server)BS :用浏览器查看的应用程序            CS: 需要额外安装客户端的非单机版的应用程序比较:1.他们都是非常重要的计算架构2.在适用internet 、维护工作量等方面,BS比CS要强的多3.B/S 架构需要进行浏览器的兼容性测试,需要升级系统在不同的浏览器里面是否满足需求4.C/S架构需要进行系统的安装、升级与卸载测试,需要考虑不同的支持的平台5.C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。6.B/S 建立在广域网之上的, 不必是专门的网络硬件环境,比C/S更强的适应范围,需要关注服务器的负载与性能测试典型的三层架构三层架构(3-tier architecture)通常意义上的三层架构就是将整个业务应用划分为:1>界面层(user interface layer)2>业务逻辑层(business logic layer)3>数据访问层(data access layer)接口介绍接口一直指的是应用程序架构中,用老提供标准数据输入和输出的方法和功能程序.主要包括:webservice,webapi ,普通api,soapapi RESTFul API等URL : Uniform Resoure Loactor,统一资源定位符,指的是网页的地址等.URL的格式schema :// host [ : port] path [query # fragment ]| 格式内容 | 描述 || -------- | ——————————————————|| schema | 模式,协议|| host | 主机名,域名,ip地址|| port |端口,若端口不是默认的,则需要显示写出来。http 80/https 443/ftp 21/20 || path | 资源路径,相对路径 || query | 查询字符串 || fragment | 片段。片段不会发送给服务器 |HTTPhttp协议(hyperText Transfer Protocol,超文本传输协议)是用于从www服务器传输超文本到本地浏览器的传送协议.它可以使浏览器更加高效,使网络传输减少.它不仅保证计算机正确快速的传输超文本文档,还确定传出文档中的那一部分,以及那部分内容首先显示(如<文本优先于图形>)HTTP 是一个应用层的协议,由请求和响应构成,是一个标准的客户端服务器模型http协议本身是一个无状态的协议.客户端只需要简单的向服务器端发出请求,客户端和服务器端都没哟必要记录彼此过去的行为,每一次请求之间都是独立的.会话机制  HTTP协议是基于TCP协议1.建立tcp连接2.发送请求3.回送响应4.断开tcp连接eg: 以在IE浏览器的地址栏中输入  1>浏览器从url中解析出,若为域名,则需要进行DNS解析      2>浏览器从url中解析出,省略的则为对应协议的默认端口        3>根据建立tcp连接        4>web浏览器发送HTTP请求,在请求中包含5>web服务器接收并处理请求,将请求的结构返回给web浏览器(回送http响应)

Web服务器性能就是指一个Web服务器响应用户请求的能力。为了提高Web服务器的性能人们进行了诸多尝试,已经取得了可喜的成果。本文通过对前人研究结果的分析,提出了在具体应用环境中优化Web服务器的方法和策略。

 影响web应用服务器性能的因素
  Web服务器的性能就是指一个Web服务器响应用户请求的能力,服务器的性能对于一个Web系统来说至关重要。为了提高Web服务器的性能人们进行了许多尝试,也采用了许多技术和方法,但是div+css教程这些技术和方法往往缺乏适用性。

关于Web负载,除了对Web负载的特征进行分析以便在评测时更好地再现真实负载之外,还要考虑Web服务器所在的网络环境下负载的情况。人们不仅要求服务器满足正常的工作负载要求,而且在高峰时期依然要保持较高的吞吐量。但是,服务器在高负载的情况下的性能表现往往低于人们的期望。

6>断开tcp连接并解析显示页面

Web服务器概述

   通过对前人的研究分析可以发现,在web服务器的优化方而存在这种问题的原因主要有两个:一方面是服务器性能评测造成的,一方面是选用优化方案时考虑不全面造成的。
现行的服务器性能评测工具在对Web服务器进行评测时,其实是由一台或几台计算机模拟客户机,与被测的Web服务器进行通信,它们其实组成的只是一个局域网的环境,这与真正的广域网的环境有一定的差别。

服务器过载的情况分为两种:一种为瞬间过载,即服务器暂时的、短时间的超载,这种情况主要是由服务器负载的特点引起的。大量的研究表明,Web请求的网络通信量分布是自相似的,即Web请求的通信量可以在很大范围内有显著的变化。这就造成服务器常常短时间的超载,但这样情况持续的时间一般很短。一种是服务器长时间的超载,这种情况一般是由某一特殊事件引起的,例如服务器受到拒绝服务攻击或者发生了“活锁”现象。

TCP vs UDP

Web系统在现在网络中广泛使用,而Web服务器则是Web系统的一个重要组成部分。完整的Web结构应包括:HTTP协议,Web服务器,通用网关接口CGI、Web应用程序接口、Web浏览器。

   另外,评测工具在选择网络负载时,虽然已经尽可能的接近真实负载,但是与持续的高频率负载要求仍有差距;再者,在性能测试指标的选择与分析上也不够合理,造成了分析结果不够公正、可靠。而在选用优化Web服务器的方法时,往往只是考虑Web服务器这一个方面,很少结合具体的应用环境。所以就造成了评测结果不够科学,应用环境考虑不够全面,Web服务器性能优化缺乏针对性。因此在具体的应用环境下优化Web服务器的性能需要另外考虑以下两个主要因素:网络特性和Web负载特点。
网络特性是指web服务器所在网络情况,是广域网还是局域网,是高速网络(传输速率在1OOMb/s以上的网络就叫做高速网络)还是低速网络,在不同的网络中相关的传输数据的类型、网络相应时间、吞吐量,利用率等网络特性不尽相同,所以要加以区分,具体情况具体分析。

第一种服务器超载情况是不可避免的,但第二种情况则可以通过对服务器改进来改善。抛开恶意的攻击不算,仔细分析服务器处理信息包的过程可以发现,造成系统在超载情况下性能下降的根本原因是高优先级处理阶段对CPU的不公平抢占。

UDP:用户数据报协议,User Datagram protocol, 无连接服务

Web服务器是指驻留在因特网上某种类型计算机的程序。它是在网络中信息提供者基干HTTP的为实现信息发布、资料查询、数据处理等诸多应用搭建基本平台的服务器,其主要功能是提供网上信息浏览服务。当Web浏览器(客户端)连到服务器并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。

 而在Web负载特点方面,由于在对Web服务器进行评测时,一个非常关键的因素就是Web负载的选择。评测工具虽然有多种,但是它们都在选择负载上做足了功课。关于Web负载特点的研究主要目的就在于对Web服务器性能进行评测时,可以根据这些特点,选择模拟最真实的Web负载的评测工具以便获得最贴近事实的Web服务器性能评测数据,以便更好的对其进行分析和得出优化方案。

  1. 服务器将处理该请求并将文件发送到该浏览器上,当Web浏览器(客户端)连到服务器并请求文件时。DHCP服务器不是万能之神
  2. Windows2003下的web服务器安全设置
  3. 航天联志服务器助力政府机构

1,不需要事先建立连接,直接发送数据

Web服务器在web页面处理中大致可分为三个步骤:第一步,web浏览器向一个特定的服务器发出Web页面请求;第二步,Web服务器接收到web页面请求后,寻找所请求的web页面,并将所请求的Web页面传送给Web浏览器;第三步,Web服务器接收到所请求的web页面,并将它显示出来。

 Web应用服务器优化方法
  在对Web服务器进行优化时要根据真实的Web应用系统的情况和特征来采取有针对性地优化方案。首先根据不同的网络特性来看:在局域网中,降低M T U (最大传输单位)值对可以避免复制数据和求校验,而通过优化select系统调用或在Socket事件处理器中执行计算可以优化请求并发管理,利用HTTP1.1持续连接等都可以使系统性能得到相应的改善,但在广域网的环境下却没有什么大的作用,有的甚至恰恰相反。

...

2,每个报文都带有完整的目的地址

web服务器不仅能够存储信息,还能在用户通过Web浏览器提供的信息的基础上运行脚本和程序。在Web上,常见的大多数表单核搜索引擎上都是用的是CGI脚本。

   例如:减少用户连接的MTU会增加服务器处理开销,采用网络延迟、带宽限制和使用HTTP1.1的持续连接在广域网中不会对服务器性能有什么大的影响。在广域网中,终端用户的请求的等待时间依赖于与网络延迟的程度,连接带宽限制情况。对于广域网,软硬中断在网络处理中占有很大的分量,所以采用适应的中断处理机制将会给服务器的响应能力带来很大的好处;将服务器定位在内核和将基于进程设计改为基于事务处理也可以不同程度的提高服务器的性能。

3,不保证报文传输的可靠性,可能丢包

影响web应用服务器性能的因素

   关于Web负载,除了对Web负载的特征进行分析以便在评测时更好地再现真实负载之外,还要考虑Web服务器所在的网络环境下负载的情况。人们不仅要求服务器满足正常的工作负载要求,而且在高峰时期依然要保持较高的吞吐量。但是,服务器在高负载的情况下的性能表现往往低于人们的期望。

TCP:传输控制协议,transmission control protocol,面向连接的服务

Web服务器的性能就是指一个Web服务器响应用户请求的能力,服务器的性能对于一个Web系统来说至关重要。为了提高Web服务器的性能人们进行了许多尝试,也采用了许多技术和方法,但是这些技术和方法往往缺乏适用性。

   服务器过载的情况分为两种:一种为瞬间过载,即服务器暂时的、短时间的超载,这种情况主要是由服务器负载的特点引起的。大量的研究表明,Web请求的网络通信量分布是自相似的web开发技术,即Web请求的通信量可以在很大范围内有显着的变化。这就造成服务器常常短时间的超载,但这样情况持续的时间一般很短。一种是服务器长时间的超载,这种情况一般是由某一特殊事件引起的,例如服务器受到拒绝服务攻击或者发生了“活锁”现象。

1,先建立连接在传输数据,之后再断开连接

通过对前人的研究分析可以发现,在web服务器的优化方而存在这种问题的原因主要有两个:一方面是服务器性能评测造成的,一方面是选用优化方案时考虑不全面造成的。

   第一种服务器超载情况是不可避免的,但第二种情况则可以通过对服务器改进来改善。抛开恶意的攻击不算,仔细分析服务器处理信息包的过程可以发现,造成系统在超载情况下性能下降的根本原因是高优先级处理阶段对CPU的不公平抢占。

2,数据传输过程中,数据包不需要携带目的地址

现行的服务器性能评测工具在对Web服务器进行评测时,其实是由一台或几台计算机模拟客户机,与被测的Web服务器进行通信,它们其实组成的只是一个局域网的环境,这与真正的广域网的环境有一定的差别。

 因此,如果限制高优先级处理阶段对CPU的占用率,或者限制处理高优先级的CPU个数,都可以减轻或者消除收包活锁现象。具体的可以采用以下的方法:
一、采用轮询机制。   为了减少中断对系统性能的影响,在负载正常的情况下采用“下半处理” 的方法就非常有效,而在高负荷情况下,采用这个方法仍然会造成活锁现象,这时可以采用轮询机制。虽然这个方法在负载正常的情况下会造成资源的浪费和响应速度降低,但在网络数据频繁到达服务器时就要比中断驱动技术有效的多。

3,保证数据传输的可靠性

另外,评测工具在选择网络负载时,虽然已经尽可能的接近真实负载,但是与持续的高频率负载要求仍有差距;再者,在性能测试指标的选择与分析上也不够合理,造成了分析结果不够公正、可靠。而在选用优化Web服务器的方法时,往往只是考虑Web服务器这一个方面,很少结合具体的应用环境。所以就造成了评测结果不够科学,应用环境考虑不够全面,Web服务器性能优化缺乏针对性。因此在具体的应用环境下优化Web服务器的性能需要另外考虑以下两个主要因素:网络特性和Web负载特点。

 二、减少上下文切换。   这种方法不管服务器在什么情况下对性能改善都很有效,这时可以采用引入核心级(kerne1-leve1)或硬件级数据流的方法来达到这个目的。核心级数据流是将数据从源通过系统总线进行转发而不需要使数据经过应用程序进程,这个过程中因为数据在内存中,因此需要CPU操作数据。
硬件级数据流则是将数据从源通过私有数据总线或是虽等DMA通过系统总线进行转发而不需要使数据经过应用程序进程,这个过程不需要CPU操作数据。这样在数据传输过程中不需要用户线程的介入,减少了数据被拷贝的次数,减少了上下文切换的开销。

tcp三次握手    开始

网络特性是指web服务器所在网络情况,是广域网还是局域网,是高速网络(传输速率在1OOMb/s以上的网络就叫做高速网络)还是低速网络,在不同的网络中相关的传输数据的类型、网络相应时间、吞吐量,利用率等网络特性不尽相同,所以要加以区分,具体情况具体分析。

 三、减低中断的频率(主要是针对高负荷情况的方法)。
  这里主要有两种方法:批中断和暂时关闭中断。批中断可以在超载时有效的抑制活锁现象,但对服务器的性能没有什么根本性的改进;当系统出现接收活锁迹象时,可以采用暂时关闭中断的方法来缓和系统的负担,当系统缓存再次可用时可以再打开中断,但这种方法在接收缓存不够大的情况下会造成数据包丢失。
Web服务器性能是整个Web系统的关键环节,提高Web服务器的性能也是长久以来人们一直关注的课题。这里通过对Web服务器的工作原理和现有的优化方法和技术的分析,得出了对待Web服务器性能的提高也应该具体问题具体分析,要在具体的应用环境中,根据其特点来采取相应的优化措施。

tcp四次握手    结束

而在Web负载特点方面,由于在对Web服务器进行评测时,一个非常关键的因素就是Web负载的选择。评测工具虽然有多种,但是它们都在选择负载上做足了功课。关于Web负载特点的研究主要目的就在于对Web服务器性能进行评测时,可以根据这些特点,选择模拟最真实的Web负载的评测工具以便获得最贴近事实的Web服务器性能评测数据,以便更好的对其进行分析和得出优化方案。

相关技术

...

1.web客户端

浏览器功能:发送HTTP请求,接受web服务器的响应并解析成web页面

浏览器的组成:

浏览器引擎:浏览器最重要或者说核心的部分是”rendering engine”,可大概译为”渲染引擎”,不过我们习惯称为”浏览器内核”.负责对网页的标记内容(例如HTML`澳门新濠3559,XML`JavaScript`图片等)和格式化信息(例如CSS`XSL等)的语法的解释并渲染显示网页.

通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息.不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同内核的浏览器的渲染显示效果也可能不同,这也是网页编写者需要在不同内核的浏览器中测试网页显示效果的原因

Trident(IE内核):该内核程序在1997年的IE4中首次被采用,是微软在Mosaic代码的基础之上修改而来的,并沿用到IE11,也被普遍称作”IE内核”。Trident实际上是一款开放的内核,其接口内核设计的相当成熟,因此才有许多采用IE内核而非IE的浏览器涌现。

Gecko(firefox内核,开源)

webkit(safari内核,chrome内核原型,开源):它是苹果公司自己的内核,也是苹果的safari浏览器使用的内核.webkit引擎包含WebCore排版引擎和JavaScriptCore解析引擎,

2.web服务器

Apache:在web服务器中,apache是纯粹的web服务器,经常与tomcat配对使用.它对HTML页面具有强大的解释能力,但是不能解释嵌入页面内的服务器脚本代码(jsp/servlet).

Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。 Apache是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。

Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此, 在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,世界上很多著名的网站都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用以及它的可移植性等方面。

Tomcat:早期的tomcat是一个嵌入apache内的jsp/servlet解释引擎

apache+tomcat就相当于IIS+ASP. 后来的tomcat已不再嵌入apache内,tomcat进程独立于apache进程运行.tomcat已经是一个独立的servlet和jsp容器,业务逻辑层代码和界面交互层代码可以分离了.因此,有人把tomcat叫做轻量级应用服务器.

IIS:microsoft的web服务器产品为internet information server(iis),IIS是允许在公共intranet或internet上发布信息的web服务器,IIS是目前最流行的web服务器产品之一,很多著名的网站都是建立在IIS的平台上.ISS提供了一个图形界面的管理工具,称之为internet的服务管理器,可用于监视配置和控制internet服务.

IIS是一种Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器, 分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。它提供 ISAPI(Intranet Server API)作为扩展Web服务器功能的编程接口;同时,它还提供一个Internet数据库连接器,可以实现对数据库的查询和更新。

微软早期的IIS,就是一个纯粹的Web服务器。后来,它嵌入了ASP引擎,可以解释VBScript和JScript服务器端代码了,这时,它就可以兼作应用服务器。当然,它与J2EE应用服务器根本无法相比,但是,从功能上说,从原理上说,它勉强可以称之为应用服务器。确切地说,它是兼有一点应用服务器功能的Web服务器

综上:apache是纯粹的web服务器,而tomcat和IIS因为具有了解释执行服务器端代码的能力,可以称作为轻量级应用服务器或带有服务器功能的web服务器.

应用服务器

IBM WebSphere

WebSphere Application Server 是一种功能完善、开放的Web应用程序服务器,是IBM电子商务计划的核心部分,它是基于 Java 的应用环境,用于建立、部署和管理Internet 和 Intranet Web应用程序。这一整套产品进行了扩展,以适应Web应用程序服务器的需要,范围从简单到高级直到企业级。

WebSphere 针对以 Web 为中心的开发人员,他们都是在基本 HTTP服务器和 CGI 编程技术上成长起来的。IBM 将提供 WebSphere 产品系列,通过提供综合资源、可重复使用的组件、功能强大并易于使用的工具、以及支持 HTTP 和 IIOP 通信的可伸缩运行时环境,来帮助这些用户从简单的 Web 应用程序转移到电子商务世界。

Oracle WebLogic

Oracle WebLogic Server 是一种多功能、基于标准的web应用服务器,为企业构建自己的应用提供了坚实的基础。各种应用开发、部署所有关键性的任务,无论是集成各种系统和数据库, 还是提交服务、跨 Internet 协作,起始点都是 Oracle WebLogic Server。由于 它具有全面的功能、对开放标准的遵从性、多层架构、支持基于组件的开发,基于 Internet 的企业都选择它来开发、部署最佳的应用。

Oracle WebLogic Server 在使应用服务器成为企业应用架构的基础方面继续处于领先地位。Oracle WebLogic Server 为构建集成化的企业级应用提供了稳固的基础,它们以 Internet 的容量和速度,在连网的企业之间共享信息、提交服务,实现协作自动化。Oracle WebLogic Server 的遵从 J2EE 、面向服务的架构,以及丰富的工具集支持,便于实现业务逻辑、数据和表达的分离,提供开发和部署各种业务驱动应用所必需的底层核心功能。

***************************************************************************

理解HTTP协议

基础概念:Http协议是一个属于应用层的面向对象的协议,由于其简捷`快速的方式,适用于分布式超媒体信息系统.

HTTP协议的主要特点可概括如下:

1.支持客户/服务器模式

2.简单快捷:客户向服务器请求服务时,只需传送请求方法和路径.请求方法常用的有GET`POST`HEAD.每种方法规定了客户与服务器联系的类型不同.由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快.

3.灵活:http允许传输任何类型的数据对象.正在传输的类型由content-type加以标记.

4.无连接:无连接的含义是限制每次连接只处理一个请求.服务器处理完客户请求,并受到介乎的应答后,即断开连接.采用这种方式可以节省传输时间.

5.无状态:HTTP协议是无状态协议.无状态是指协议对事务处理没有记忆能力.缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大.另一方面,在服务器不需要先前信息时它的应答就较快.>http事务:一次http请求对应一次http响应. http事务是独立的,不存在上下文关系.

每次http请求都是由两部分组成:

1>发送请求      http请求报文

2>回送响应      http响应报文

HTTP版本:  HTTP/0.9  - - HTTP/1.0 - - HTTP/1.1 - - HTTP/2.0

HTTP/1.0:短连接

HTTP/1.1:持久连接

HTTP报文

编辑:服务器运维 本文来源:服务器将处理该请求并将文件发送到该浏览器上

关键词: