普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大,那么必须首先配置一台更高性能的专用服务器才能解决问题,否则怎么优化都不可能彻底解决性能问题。
第二,优化数据库访问。
服务器的负载过大,一个重要的原因是CPU负荷过大,降低服务器CPU的负荷,才能够有效打破瓶颈。而使用静态页面可以使得CPU的负荷最小化。前台实现完全的静态化当然最好,可以完全不用访问数据库,不过对于频繁更新的网站,静态化往往不能满足某些功能。
缓存技术就是另一个解决方案,就是将动态数据存储到缓存文件中,动态网页直接调用这些文件,而不必再访问数据库,WordPress和Z-Blog都大量使用这种缓存技术。我自己也写过一个Z-Blog的计数器插件,也是基于这样的原理。
如果确实无法避免对数据库的访问,那么可以尝试优化数据库的查询SQL.避免使用Select *from这样的语句,每次查询只返回自己需要的结果,避免短时间内的大量SQL查询。
第三,禁止外部的盗链。
外部网站的图片或者文件盗链往往会带来大量的负载压力,因此应该严格限制外部对于自身的图片或者文件盗链,好在目前可以简单地通过refer来控制盗链,Apache自己就可以通过配置来禁止盗链,IIS也有一些第三方的ISAPI可以实现同样的功能。当然,伪造refer也可以通过代码来实现盗链,不过目前蓄意伪造refer盗链的还不多,可以先不去考虑,或者使用非技术手段来解决,比如在图片上增加水印。
第四,控制大文件的下载。
大文件的下载会占用很大的流量,并且对于非SCSI硬盘来说,大量文件下载会消耗CPU,使得网站响应能力下降。因此,尽量不要提供超过2M的大文件下载,如果需要提供,建议将大文件放在另外一台服务器上。目前有不少免费的Web2.0网站提供图片分享和文件分享功能,因此可以尽量将图片和文件上传到这些分享网站。
在使用服务器的过程中,经常会碰到流量异常,时不时的流量很高。遇到这样的情况,可能是以下几点原因:
1.服务器被暴力破解
2.服务器被攻击DD/CC
遇到这种情况,该如何分析呢?
一、首先,可以先登录服务器里面检查服务器日志,看看是否有IP多次异常登录并显示登录失败的请求,如果显示多次登录失败,说明有人正在尝试暴力破解登录你的服务器,占用了你过多的带宽资源。解决办法:把异常请求的IP加入到防火墙的黑名单中;端口改成随机5位,尽量复杂些;密码更改复杂些,安全系数高避免被恶意破解。若已经被暴力破解了,建议重装下系统。不管怎样,预防大于治疗,提前做好安全防护措施是非常有必要的。
二、其次,检查下服务器的80端口连接数,看看80端口连接数是不是很多,这个要结合用户自己平常对访问流量的一个掌握,一般情况下80连接数几百是正常的,假如上千到万了,很有可能就是被攻击导致的流量异常。那如何查看80连接数呢?如何查看80端口连接数:Windows系统:在运行cmd里面输入此命令:netstat -ano|findstr "8080"或者netstat -an |find /c ":80"Linux系统:netstat -nat|grep -i '80'|wc -l
那又有什么解决办法呢。若是被攻击了导致的流量异常,一般情况下服务器商会封掉被攻击的IP,等没有被攻击了,一定时间后会自动解封。这里要判别下是打IP还是打网站,可以把被攻击的IP下的站解析到其他的IP下。若这个换过的IP还是被打,很有可能是网站被攻击,一般情况下都是同行竞争引起的,这个时候建议使用高防类的服务器。若是换了IP,之前的被攻击的IP还是被打,那可能是打IP,可以找服务器商更换IP。这是日常工作总结出来的,欢迎共同交流,一起学习成长哈。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)