Web应用服务器优化方法
发布时间:2007-03-26 13:14:00
Web应用服务器优化方法
在对Web服务器进行优化时要根据真实的Web应用系统的情况和特征来采取有针对性地优化方案。首先根据不同的网络特性来看:在局域网中,降低M T U (最大传输单位)值对可以避免复制数据和求校验,而通过优化select系统调用或在Socket事件处理器中执行计算可以优化请求并发管理,利用HTTP1.1持续连接等都可以使系统性能得到相应的改善,但在广域网的环境下却没有什么大的作用,有的甚至恰恰相反。
例如:减少用户连接的MTU会增加服务器处理开销,采用网络延迟、带宽限制和使用HTTP1.1的持续连接在广域网中不会对服务器性能有什么大的影响。在广域网中,终端用户的请求的等待时间依赖于与网络延迟的程度,连接带宽限制情况。对于广域网,软硬中断在网络处理中占有很大的分量,所以采用适应的中断处理机制将会给服务器的响应能力带来很大的好处;将服务器定位在内核和将基于进程设计改为基于事务处理也可以不同程度的提高服务器的性能。
关于Web负载,除了对Web负载的特征进行分析以便在评测时更好地再现真实负载之外,还要考虑Web服务器所在的网络环境下负载的情况。人们不仅要求服务器满足正常的工作负载要求,而且在高峰时期依然要保持较高的吞吐量。但是,服务器在高负载的情况下的性能表现往往低于人们的期望。
服务器过载的情况分为两种:一种为瞬间过载,即服务器暂时的、短时间的超载,这种情况主要是由服务器负载的特点引起的。大量的研究表明,Web请求的网络通信量分布是自相似的,即Web请求的通信量可以在很大范围内有显著的变化。这就造成服务器常常短时间的超载,但这样情况持续的时间一般很短。一种是服务器长时间的超载,这种情况一般是由某一特殊事件引起的,例如服务器受到拒绝服务攻击或者发生了“活锁”现象。
第一种服务器超载情况是不可避免的,但第二种情况则可以通过对服务器改进来改善。抛开恶意的攻击不算,仔细分析服务器处理信息包的过程可以发现,造成系统在超载情况下性能下降的根本原因是高优先级处理阶段对CPU的不公平抢占。
因此,如果限制高优先级处理阶段对CPU的占用率,或者限制处理高优先级的CPU个数,都可以减轻或者消除收包活锁现象。具体的可以采用以下的方法:
一、采用轮询机制。为了减少中断对系统性能的影响,在负载正常的情况下采用“下半处理” 的方法就非常有效,而在高负荷情况下,采用这个方法仍然会造成活锁现象,这时可以采用轮询机制。虽然这个方法在负载正常的情况下会造成资源的浪费和响应速度降低,但在网络数据频繁到达服务器时就要比中断驱动技术有效的多。
二、减少上下文切换。这种方法不管服务器在什么情况下对性能改善都很有效,这时可以采用引入核心级(kerne1—leve1)或硬件级数据流的方法来达到这个目的。核心级数据流是将数据从源通过系统总线进行转发而不需要使数据经过应用程序进程,这个过程中因为数据在内存中,因此需要CPU操作数据。
硬件级数据流则是将数据从源通过私有数据总线或是虽等DMA通过系统总线进行转发而不需要使数据经过应用程序进程,这个过程不需要CPU操作数据。这样在数据传输过程中不需要用户线程的介入,减少了数据被拷贝的次数,减少了上下文切换的开销。
三、减低中断的频率(主要是针对高负荷情况的方法)。这里主要有两种方法:批中断和暂时关闭中断。批中断可以在超载时有效的抑制活锁现象,但对服务器的性能没有什么根本性的改进;当系统出现接收活锁迹象时,可以采用暂时关闭中断的方法来缓和系统的负担,当系统缓存再次可用时可以再打开中断,但这种方法在接收缓存不够大的情况下会造成数据包丢失。
Web服务器性能是整个Web系统的关键环节,提高Web服务器的性能也是长久以来人们一直关注的课题。这里通过对Web服务器的工作原理和现有的优化方法和技术的分析,得出了对待Web服务器性能的提高也应该具体问题具体分析,要在具体的应用环境中,根据其特点来采取相应的优化措施。
猜你喜欢
- Discuz!7.1 的编辑器更为人性化,使用起来方便快捷。站长可以在管理后台设置编辑器模式及表情的显示; Discuz! 还自带了四种 D
- 个人认为不管做什么网站一定要有特色,E文网站也是一样。先简单阐述下做网站的几个关键,也许大家听起来觉的很简单,但是大家可以认真想下你做到没。
- 一个草根的痛苦,莫过于流量的裹足不前。更大的痛苦来自于流量在增加的同时,网站受到无情的攻击!每天早上5点多爬起,晚上深夜灯光依然照亮,布满血
- 网络热点瞬息万变,春哥曾哥已经是过去式,“凤姐”的雷人囧语成为了2010年第一个网络兴奋点,然而现在又一网络热词“80后副局长”诞生了,一名
- 相信大多数站长都曾经遭遇过iframe木马的侵害,有朋友的网站被注入了N回iframe,心情可想而知。而且现在ARP攻击,注入iframe也
- 老谢我也算得上是网站推广的老前辈了,一些网站推广经验和大家分享下。1.论坛推广这里所说的论坛推广绝对不是在论坛里一个一个版贴广告,也不是将网
- CPU Time的限制主要是防止网站过度使用实体主机(web server)的CPU资源,你必须知道在共享主机(share hosting)
- 阅读上一篇:一个完美网站的101项指标.第一部分.概述 内容是一个网站最有价值的部分,内容为王就是这个意思,用户访问您的网站的唯一目的是获取
- 程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。.NET是微软推出的
- Sun的Java系统Web服务器,是一款顶尖的关键任务级Web服务器。Sun的Java系统Web服务器(也就是以前的SunONEWebSer
- 服务器在线12月23日报道 WEB服务器主要是面向互联网的。所以,其是企业众多信息化应用中最容易受到攻击的。现在企业的WEB应用越来越多,特
- 内容摘要:这几年的时尚界经历了颇多诸如9·11式重创,却又每一次在废墟上奇迹地重生。从中国到日本到韩国再到印度,对于时尚名品的热爱,几乎成了
- 喜欢前端技术的朋友一定不要错过,本文选了上面一部分,原文地址:http://ued.taobao.com/blog/2007/12/20/d
- 站长在竞争及生存压力非常大的今天,该如何靠网站赚钱?据CHINAZ的调查显示,六成站长靠广告联盟赚钱,但是流量是基础,如果没有流量,就赚不到
- google adsense的搜索广告,有二种形式,一是传统的搜索框,二是不久前推出的“搜索联盟”。这二种有何区别呢?下面做一下介绍。一、搜
- 美联社CEO汤姆·库利(Tom Curley)北京时间11月13日晚间消息,据国外媒体报道,美联社CEO汤姆&
- ixwebhosting作为国外知名的主机商之一,购买它们的主机时,它不仅赠送免费域名,还赠送独立IP,当我们使用免费域名的时候,有时为了某
- 网站用户的回头率高与低,是非常重要的!我们不应该指望每位访客都会再回来,但是,我们应当做到让潜在的访客不定期的再回访,同时,回访的访客也是会
- 用户是否听说过虚拟专用网VPN的优越特性?是否准备好在远程访问设备上看看它的优越性了吗?那么,用户应该很高兴的是,Windows 2000提
- 怎样更改GoDaddy主机的FTP账户密码呢?如果有必要,你可以使用Hosting Control Center来更改你的托管帐户的密码。这