在对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服务器性能的提高也应该具体问题具体分析,要在具体的应用环境中,根据其特点来采取相应的优化措施。
先阅读apache配置优化建议如下,再对相关参数进行调整,观察服务器状况.Apache配置优化建议:
进入/usr/local/apache2/conf/extra目录下
Apache优化,
经过上述操作后,Apache已经能够正常运行。但是,对于访问量稍大的站点,Apache的这些默认配置是无法满足需求的,我们仍需调整Apache的一些参数,使Apache能够在大访问量环境下发挥出更好的性能。以下我们对Apache配置文件httpd.conf中对性能影响较大的参数进行一些说明。
(1)Timeout该参数指定Apache在接收请求或发送所请求内容之前的最长等待时间(秒),若超过该时间Apache则放弃处理该请求,并释放连接。该参数默认值为120,推荐设置为60,对于访问量较大的网站可以设置为30或15。
(2)KeepAlive该参数控制Apache是否允许在一个连接中有多个请求,默认打开。但对于大多数论坛类型站点来说,通常设置为off以关闭该支持。
(3)MPM-prefork.c在默认情况下Apache使用Prefork(进程)工作模式,可以说这部分的参数设置是对Apache性能影响的核心和关键。用户可以在配置文档中找到以下配置段:
策划一份完整的SEO网站优化方案,先分析这个网站目前的情况,该如何去做,能达到个什么效果,需要多少人员,主要根据这几大点去写优化方案,如下:一、 网站的基础信息:
网站名称:发哥SEO技术博客(写清楚标题是什么)
网站网址:(写清楚,不然别人都不知道你说的是哪个网站)
上线时间:2016/6/14 优化时间:刚上线(写明什么时候上线什么时候开始优化)
服务器信息:阿里云服务器
网站性质:提供SEO技术分享与交流
二、 网站价值定位
价值定位:提供SEO实战经验分享与案例
目标定位:成为SEO行业一个知名网站,通过实战经验分享,帮助到更多初学者更快进入SEO行业当中快速提升个人价值
三、 网站SEO数据报告
1、 关键词排名情况。
2、 网站流量及PV 日IP是多少,PV多少?跳出率多少?做一个数据的收集,看情况收集,可分周期,月期收集。
3、 关键词数据:
主关键词:填写网站的主要关键词
高流量词:填写哪个词带来的流量比较高
长尾词:主关键词带有的哪些长尾词、相关长尾相等
最好导入一份一个月的数据统计,方便日后的数据对比及数据分析。
四、 网站存在的问题
这里开始就开始针对性的根据自身网站存在的问题或找出网站存在哪些问题,哪些需要改进的,哪些不足的,哪些没有都需要一一列出来。比如:301没有做,404没有做,首页LOGO没有带入链接,图片没有加alt标签等等一系列问题。
五、 网站改版优化方案
这里描述的是上面提出来的问题怎么解决,用什么办法去解决,不然只挑问题,不去解决这样是不对的。要懂得找问题也要懂得如何解决问题,这样才是一名优秀的SEOER。比如:
301: 网站需要做301跳转处理, 由谁来做?需要多少时间完成。这些都是需要填写清楚。
404:404页面没有设定,跳出率较高,需要引导用户返回原页面或返回其它页面,需要设定跳转引导页面。在哪里设定,需要怎么做才能解决404页面的问题。有谁来做?是建站公司还是自己或者是程序员?需要多长时间来完成。此处就省略100行了,后面的自己想办法解决。
六、 人员分工及操作细则
如果有一个团队的话就需要安排人员进行操作,如果全部是自己一个人操作的话可以忽略此条。(此处根据个人情况而定,不需要抄袭) 优化小组:多少人?
一人负责技术程序 需要完成以下几点: (1)301技术实现 (2)404实现 (3)…………
一人负责内容编辑 (1) 一天编辑多少内容 (2) 写什么样的文章
一人负责外部优化 (1) 每天到外部发布多少条外链 (2) 每天需要到哪里引流 (3) …………
一人负责数据统计 (1) 查看每天的数据走势,根据走势做出判断或优化方向。 (2) 此处省略几万字…….
一名总负责人,效果跟踪与监控 七、 目标效果预测 一个合格的优化方案是需要一个效果的预测的。这个预测是告诉老板或领导,做的这些能达到什么效果。然后根据这些方案里面的操作内容去为这个目标去奋斗努力。比如说: 一个月后:单日流量突破500IP,多少关键词排名,能达到个什么样的效果; 三个月后达到5000IP 10000PV, 半年后…………
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)