如何解决网站大规模并发访问带来的性能下降问题

摘要: 再过半个月就2013年的春运就要来临,每年外地打工的人们都会因为订票而烦恼。特别是网上订票,对12306提供给的网上订票系统会有各种看法,从去年的年春节,铁道部推出12306网站,

再过半个月就2013年的春运就要来临,每年外地打工的人们都会因为订票而烦恼。特别是网上订票,对12306提供给的网上订票系统会有各种看法,从去年的年春节,铁道部推出12306网站,实行网络实名购票,每一个返乡人原以为能买着一张回家的火车票,但结果还是大失所望。在去年,7天内,12306网站访问用户已占全球互联网用户的0.902%,每天点击量高达10亿人次,系统一度支撑不住如此庞大的访问量而陷入崩溃。12306网站的点击量属于千万PV级别,如果要满足实际的要求,那么需要能够应对网站大规模的并发访问,这一问题,很多大型网站的站长也可能会面临。要解决网站大规模并发访问带来的性能下降问题,有很多种常用的方法,我们可以从以下几个层面去考虑和优化?

一、服务器配置优化

我们需要根据应用服务器的性能和并发访问量的大小来规划应用服务器的数量。有一个使用原则是:单台应用服务器的性能不一定要求最好,但是数量一定要足够,最好能有一定的冗余来保障服务器故障。特别是,在高并发访问峰期间,适当增加某些关键应用的服务器数量。比如在某些高峰查询业务上,可以使用多台服务器,以满足用户每小时上百万次的点击量。

二、使用负载均衡技术

负载均衡技术是解决集中并发访问的核心技术,也是一种较为有效的解决网站大规模并发访问的方法。实现负载均衡技术的主要设备是负载均衡器服务器。例如,我们把网站部署到在两台不同的服务器之上(前提是要保证这2台或者多台服务器都可以正常运行网站程序),这几台服务器之间通过安装特定的软件实现负载均衡。那么,某个时刻,当网站面临大规模访问时,用户的请求会通过负载均衡程序,根据不同服务器的繁忙和资源情况,自动分配到处理性能最优的服务器上,从而将大规模用户产生的高并发访问均衡地分流到各个服务器上。这样就能大大减轻单台服务器处理高并发请求,确保整个网站系统面临高负载时的可靠性。

三、数据库结构设计

这部分是程序层的问题,通常是由软件工程师进行负责,对SQL语句进行优化。我们可以采取的措施包括:对经常查询的数据库字段做索引、对数据库表进行分区操作(如对海量数据进行分区操作十分必要,例如针对按年份存取的数据,我们可以按年进行分区)、对数据库查询语句-SQL(减少冗余的数据库操作,提高查询效率)进行优化等。

四、中间件的优化

所谓的中间件,听起来会有点像很深的技术,其实就在我们身边,各位站长朋友经常在网站部署的时候用到的Apache、IIS、Tomcat、WebLogic都是中间件。中间件主要位于客户端/服务器的操作系统之上,负责计算机的资源管理和网络通讯。举个简单的例子,我们在部署JAVA项目的时候,通常都是用Tomcat中间件,那么Tomcat在默认情况下是不优化的,当在高并发的情况下,非常容易当机。关于Tomcat的优化给出以下几个建议(本人在实际项目开发过程中觉得较为重要的几点):①线程池优化;②启动占用内存优化;③日志输出优化;④HTTP压缩优化;⑤配置文件优化。

上面举例的Tomcat中间件(也就是WEB服务器)只是一个例子,不同的网站采用不同的架构,那么对相应的中间件的优化也会有不同的方法,比如微软的IIS有相应的配置参数,所以具体的优化方法可以根据项目的需要,查阅中间件的官方文档说明进行参数设置,这样才能实现中间件的最优设置。

五、数据缓存技术的使用

现在大多数大型网站都有使用缓存技术,把用户经常使用到的数据通过缓存(Cache)技术进行管理,从而减轻服务器重新请求的压力,提高网站的访问速度。缓存技术有很多,这里我个人根据实际的项目经验,可以将其分成2种,即数据缓存和页面缓存。

①所谓的是数据缓存,指的是数据库的数据不是直接传输,而是将数据调用到内存,然后从内存中读取,从而可以大大提高读取速度。数据缓存技术有很多的方案,这里由于开源、高性能等特点,建议使用Memcache来设置数据缓存技术来加速动态web应用程序,减轻数据库负载。

②页面缓存一定程度上是针对公共页面,静态化也是页面缓存的一种,将用户经常访问的页面在服务器的相应目录下生成静态页面,当用户再次访问时,不需要对服务器进行动态请求,而只需要对缓存下来的html页面直接读取,这样访问的效率就可以得到有效的提高。

时间: 2024-10-30 21:48:54

如何解决网站大规模并发访问带来的性能下降问题的相关文章

应对网站高并发访问的四个建议

将硬盘读写分离.功能和展示分开.基本功能封状成类及在设计架构时保证其扩容性,对大型网站建设至关重要. 互联网不断扩大的规模.日益增长的用户群以及Web2.0的兴起,对网站建设提出了新的要求,它要具备高性能和高可扩展性,同时要支持高度并发的访问. 将硬盘读写分离 如果网站硬盘的读写性能是整个网站性能提升的瓶颈,那么可考虑将硬盘的读.写功能分开,分别进行优化.在用来写的硬盘上,如果我们提升硬盘的I/O,那么肯定会增加整个文件系统的故障率,因为它是所有驱动器的故障率之和.硬盘的I/O和故障率不能兼得.

新建网站本机能访问外网无法访问解决办法

新建网站本机能访问外网无法访问解决办法            之前带着几个人给某事业单位运用公司新近研发的的一套框架建了个网站,在局域网中试运行了20来天之后应客户的要求发布到公网上之后,出现了无法访问的问题. (其他的像备案,域名,独立IP等之前已经全部都弄好了,通过外网访问的时候端口都对应的打开了,防火墙等因素也不予考虑)            服务器环境          WinServer2008 + IIS7          问题描述          能够Ping通,本机可以访问,

站长务必全面解决网站缺陷 减轻百度蜘蛛访问压力

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 网站优化的工作分为很多块:外链.内链.内容编辑.数据分析等等,其中分析iis日志也是其中的工作之一.分析iis日志的最终目的是观察百度蜘蛛每天对网站的爬行情况,并通过观察总结出其中的不足,最后做出相应的解决方案,以求让网站优化工作更完美. 分析iis日志的方法多种多样,相信各位站长不会陌生,但是现在笔者并非为大家介绍如何分析iis日志,而是想

【问底】徐汉彬:Web系统大规模并发——电商秒杀与抢购

[导读]徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设. 电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因? 一.大规模并发带来的挑战 在过去的工作中,我曾经面对过5

Web系统大规模并发——电商秒杀与抢购

电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因?  一.大规模并发带来的挑战  在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整个Web系统遇到了很多的问题和挑战.如果Web系统不做针对性的优化,会轻而易举地陷入到异常状态.我们现在

如何解决网站流量稀少的问题

网站优化我们最看重的是什么?流量,不错流量才是我们所关心的主要要素.如果一个网站没有流量,那么谈再多也不过是空想奢望,一个网站没有流量,就如无源之水无本之木.流量才是衡量一个网站的基础与标准.我们固然做网站优化不是我了追求流量,而是宣传我们的产品和服务,但是,如果你的网站没有一个人来访问,流量稀少.那么如何达到你宣传产品和服务的目的.所以做网站优化网站的流量是一个不可回避的问题.那么面对众多的网络优化者,我们都想提高网站的流量,可是事与人违,每次查看网站的数据,那网站的流量总是显得那么刺眼,如此

站长必懂如何解决网站跳出率问题!

可以说搜索引擎判断一个网站的质量的高与低很大的程度上是考察一个网站的受众群体的多少,并且这些用户给予网站带来了多少页面点击量.用户在访问整站总共停留时间长短和网站的跳出率,搜索引擎通过这些数据进行综合性的分析,可以判断出这个网站的质量的好坏和是否给予这个网站权重的高与低,经过长时间的数据分析,发现网站的跳出率的高与低将直接的影响着网站各个数据的好坏,打个比方说:一个用户进入了我们网站的首页,就直接的跳出了我们的网站,那么这个网站的浏览量就为零.网站的停留时间也为零,所以说要提升整个网站的权重解决

快速解决网站降权问题三:网站降权解决办法

大家好,在前面两篇文章中我跟大家分析了两个方面的问题,一个是说的网站被降权之后的一些现象,主要是为了大家遇到类似的现象的时候能够清醒的认识到到底自己的网站有没有被降权,另外一个是说的网站被降权的几个主要的原因,主要是为了帮助大家找出自己的一些造成网站降权的不当操作,及时改正.今天我接着这个话题往下谈谈对于遇到了网站降权问题我们该怎么快速解决的一些看法,希望抛砖引玉的一些看法能够给大家带来灵感的火花. 谈到具体的网站降权解决办法,很多人都是一筹莫展,其是还是那么个道理,先找出原因,然后对症下药.这

如何解决网站被K只剩首页?

如题,这个是很多站长头疼的问题,当然作者本人最近一个站也出现了这样的问题,现在在极力的解决之中,当然本人之前同样也出现了这样的问题,最终还是解决了,下面给大家讲讲出现这些问题的因素. 网站是否发生变动 我们发生了这样的事情后不要先急着抱怨百度k的只剩下我们首页,百度它虽然是机器人,但是不会无缘无故的k一个站或者降权的,肯定都是有一定的因素的,包括笔者本人的站现在被K都是犯了很多错误得,下面就给大家讲讲千万不要犯的错误. 一:修改tite 很多站长起初对网站的名称什么什么的都没规划好,就直接改来改