高并发Web应用系统的性能优化分析与研究
2019-09-10王伟谭松荣
王伟 谭松荣
摘 要:Web应用系统在大量用户进行访问的情况下容易出现网站响应的时间过长、系统崩溃和瘫痪等现象,并且随着社会不断地发展,使用互联网的用户变得越来越多,所以开发人员要对Web应用系统进行最大限度的优化,以保证Web应用系统的使用质量。所以改变Web正面临的问题是刻不容缓的,因此本文主要分析和研究了高并发Web系统性能的优化方法。
关键词:高并发;Web应用系统;性能优化
中图分类号:TP311.52 文献标识码:A 文章编号:2096-4706(2019)03-0022-02
Analysis and Research on Performance Optimization of
High Concurrent Web Application System
WANG Wei,TAN Songrong
(Tianyi iMusic Culture Technology Co.,Ltd.,Guangzhou 510180,China)
Abstract:Web application system is prone to some phenomena such as too long response time,system crash and paralysis when a large number of users visit it. With the continuous development of society,more and more users will use the internet. Therefore,developers should optimize the Web application system to the maximum extent to ensure the quality of the use of the Web application system. Therefore,it is urgent to change the problems that the Web is facing. Therefore,this paper mainly analyses and studies the performance optimization methods of high concurrent Web systems.
Keywords:high concurrency;Web application system;performance optimization
0 引 言
解决Web应用系统目前正面临的问题,开发人员就要对系统中的前端、后台程序、数据库等进行优化,让服务器的配置、数据库的性能和Web容器的性能等都得到提高,保证Web应用系统在面对高并发的情况下不出现崩溃、响应时间长等问题,提高用户在使用时的体验感,使Web应用系统的发展更加良好。
1 Web应用系统性能优化的必要性
决定Web应用系统性能好坏的因素主要有四个,其中包括页面的响应时间、并发连接的最大化、单位时间内需要处理的HTTP的错误数量、服务器HTTP的带宽,面对目前市场上Web应用系统存在的问题,尽管通过扩大服务器的内存以及增加网络出口的带宽等方法使系统的性能得到了一定的提高,但是这些方法还不能有效解决问题的根本所在,并且随着社会的不断发展,使用Web应用系统的人数越来越多,没有一个精简、性能优良的Web系统根本无法支撑日益增长的人数需求。
2 Web应用系统的优化方案
2.1 Web应用系统中前端的优化方案
要充分对页面的加载过程进行了解才能对Web应用系统中的前端进行优化。通过了解知道,在整个页面进行加载的过程中,其下载到浏览器中的是一个不包括图片格式的HTML文档,这一下载过程只有整个页面加载的十分之一,当文档加载完成之后,就会进入到一个对页面进行解析的步骤,首先会解析head的标签,在解析的过程中可能会遇到一些引用的JS文件等,这种情况下浏览器就不会再继续对页面进行加载,而是会先对标签进行请求工作,待请求通过之后才会继续进行解析,当该标签被解析完成之后,就会对body的标签继续进行解析,与解析head标签不同的是,它是会将一个标签所对应的SRC的内容进行请求,其中如果有很多个标签,浏览器就会对对应的SRC内容进行并发的请求。其主要的解析过程如图1所示。
通过描述相关的页面加载过程,可以清楚的知道页面的质量在一定程度上影响了高并发网站运行的速度,如果页面的内存太大,那么在页面进行加载的时候就会耗费比较大的网络带宽,所以,要想在一定程度上提升网站运行的速度,就要设计比较简洁的网页,减少一些没有用的网络流量,使帶宽的压力得到一定的缓解,因此对Web应用系统的前端进行优化,可以做到以下五个步骤:第一,在一定程度上减少引用过多的外部文件,通过将多个外部文件进行合并,有效减少网站中HTTP的请求;第二,在页面进行加载的过程当中,可以将一些暂时还未用到的外部文件在页面的底部进行加载,有效减少等待的时间;第三,在浏览器中缓存一些网站经常会用到的重复文件,减少在进行HTTP请求时对服务器的压力,在一定程度上会缩短页面加载的时间;第四,通过对页面中的图片进行像素、格式等的有效处理,将图片的大小进行裁剪,减少加载图片的时间;第五,可以使用Ajah的异步加载,使网站能够在不刷新页面的情况下对页面上的内容进行更新,在一定程度上减少用户等待页面加载的时间。
2.2 Web应用系统中后台程序的优化方案
2.2.1 对Session进行设置
在网站的运行过程中,由于Web应用系统中无状态记忆的特征,因此在网站的请求与服务器建立起Web应用系统的连接时,其状态不能进行共享,比如说如果一个用户在登录时的用户标识是1,在进行密码修改时,系统就不会对用户进行定位以获取其信息,这是因为系统中的一个Session在定义变量的时候,在其生命周期内可以使用户访问所有的链接,并且在全局变量的传递工作中起着重要的作用,由于Session拥有比较好的便捷性,因此许多的技术开发人员经常会使用Session,所以在进行高并发的访问时,就会产生大量的内存,使服务器的压力极大地增加。要想有效解决这个问题,就需要在适当的程度上解决好Session的问题,比如尽全力将Session中的信息进行精简,选择将一些用户经常会使用到的信息储存到该系统中,并且当用户使用后,可以有效地将一些无用信息清除,在一定程度上降低服务器内Session所占的内存。
2.2.2 优化数据库中的操作语言
在目前的关系型的数据库当中,要访问数据就必须通过编写相应的数据库操作语言,所以优化数据库中的操作语言是必然的,目前在编写操作语言的过程中,由于每个项目的规模、数据关系等因素都不相同,所以要对这些因素进行仔细和反复的分析,才能有效地优化操作语言。
2.2.3 加强数据的分页技术
在应用系统中有效使用分页技术可以在一定程度上减少数据库查询工作的工作量,因为它可以在每次都展示给用户一个固定的数据量,来降低网络在传输数据过程当中的一些负荷,加强数据的分页技术可以有效避免用户因为查询大量的数据而对网页产生的疲倦感,提升用户的使用体验。
2.2.4 建立数据缓存
在系统的日常工作中,验证相关的信息需要将用户的密码与数据库进行匹配,才能进入网页,这样的工作过程会浪费很多的时间以及耗费很大的资源量,并且在如今高并发的情况下,用户频繁的对数据库进行访问,会在很大程度上降低系统的性能,所以在程序与数据库创立连接的中间层建立数据缓存,可以在一定程度上减少数据库的访问次数,极大提高系统响应的速度。
2.2.5 将页面静态化
在一个网页总的展示页面当中,肯定会运用很大量的数据库的操作语言来获取信息,但是这个操作十分的复杂,并且通过频繁的访问会增大服务器处理数据的压力,使用户的体验感受到影响,并且系統的性能也会在一定程度上受到影响。所以要想改善这一局面,就可以将这类页面进行静态化的处理,并且进行静态化的处理会使操作过程变得简单,提高了整个页面的运行速度,并且不会改变页面中原来拥有的内容。
2.3 对Web应用系统中数据库的优化方案
将数据库进行优化可以降低数据在反应时所花费的时间,还可以提高数据库的吞吐量。所以对数据库进行优化可以做到三个步骤:第一是创建索引,使用户在查询资料的时候能够很快找到自己想要的信息;第二是修改系统中缺省的配置,让数据库中内存需求能够得到满足;第三是将数据进行分表储存,减少用户在查询时产生的一些记录条数,避免一些没有必要的访问,在一定程度上提高系统的检索速度,增加用户的体验。
3 结 论
随着社会和科学技术的不断发展,人们会在日常的生活中越来越多的使用到计算机,所以面对如今高并发的情况,优化Web应用系统是必然的趋势,通过将Web系统中的前端、数据库等进行优化,可以有效减少人们在使用时进行查询的时间,提高用户的体验感,使其能够更好的发展。
参考文献:
[1] 杨林.基于Node.Js的Web系统性能提高方法研究 [D].陕西:西安理工大学,2016.
[2] 王恋恋.高性能Web应用系统架构研究与优化 [D].北京:北京邮电大学,2016.
[3] 王亚楠,吴华瑞,黄锋.高并发Web应用系统的性能优化分析与研究 [J].计算机工程与设计,2014,35(8):2976-2981.
作者简介:王伟(1978-),男,汉族,辽宁海城人,研发中心总经理,工程师,博士研究生,研究方向:高并发分布式系统设计、基于Hadoop的大数据平台设计。