如何优化网站性能?针对前后端代码框架优化

科瑞斯官方科瑞斯官方 2023年12月25日 优化网站性能前后端优化

1、前端优化

如何优化网站性能?针对前后端代码框架优化

首先,让我们谈谈前端优化。80%的用户浏览网页的期待时间产生在访问器前端,尤其是页面和页面中各种元素(图片、CSS、JavaScript、flash…)的下载。因此,在许多情形下,与消费大批时间在困难和繁琐的流程改良上相比,前端优化往往可以事半功倍。

对于首次浏览您的网站但尚未将您的网站内容缓存在访问器缓存中的用户,我们可以执行以下操作:

1)减少页面浏览生成的HTTP连接数

对于首次浏览您的网站的用户,页面生成的HTTP连接数是影响性能的关键瓶颈。

对策:

-坚持页面设计尽可能简单,尽量减少图片的应用,并通过放弃一些不必要的页面效果来减少JavaScript的应用。

-应用一些优化技术,如利用图片的背景位移来减少图片数量;影像地图技术;应用inlineimages将CSS图像捆绑到网页中。

-尝试合并JS和CSS文件以减少独立文件的数量。

2)将CSS放在页面顶部,将JS文件放在页面底部

CSS引用应放在HTML的标题中,JS文件引用应尽可能放在页面底部标志的后面。其主要思想是尽快显示核心页面内容。但是需要留意的是,对于一些应用了大批JS的页面,底部的一些JS文件可能会导致一些不可预知的问题,可以依据实际情形恰当应用。

具体来说,一些JavaScript压缩工具用于压缩JS脚本、删除空白字符和注释以及最小化变量名。基于gzip压缩,JS内容的压缩可以将性能再进一步5%。

3)尽量减少应用外部脚本并减少DNS查询时间

对于网站的频繁用户,主要的优化思想是很大限度地利用用户访问器的缓存,以减少服务器的开销。

4)在标题中添加过期时间(expiresheader)

向标头中的静态内容添加一个较长的过期时间,以便用户将来只能读取缓存中的文件,而无需与服务器进行任何交互。然而,这样做也存在一些问题。更新图像、CSS和JS文件时,如果用户不刷新访问器,则无法获得更新。这样,当我们修改图像、CSS和JS文件时,我们必需重命名它们,以确保用户能够浏览有价值的内容。这可能会给开发带来很多麻烦,因为这些文件可能会被站点中的许多文件引用。Flickr提出的处置办法是通过URL重写使不同版本号的URL实际指向同一个文件,这是一种聪慧的办法,因为URL级别的操作效率很高,可认为开发流程提供很多方便。

要了解原因,您必需了解访问器在浏览URL时的工作方法:

A.首次浏览URL时,用户从服务器段获取页面内容,将相关文件(图像、CSS、JS…)放入缓存,并在文件头中保存过期时间、LastModified、ETag和其他相关信息。

B当用户重复浏览URL时,访问器首先检查缓存中是否存在同名文件。如果是,请检查文件的过期时间;如果文件未过期,则直接从缓存读取该文件,并且不再浏览服务器。

C如果缓存中文件的过期时间不存在或已超过,访问器将浏览服务器以获取文件的标题信息,检查LastModified、etags和其他信息。如果发觉自上次浏览以来本地缓存中的文件未被修改,则将应用本地缓存中的文件;

依据我的经验,如果可能的话,试着遵守这个原则为静态文件增长过期时间,从而大大减少用户对服务器资源的重复浏览。

5)CSS和JS文件在单独的外部文件中引用

将CSS和JS文件放在单独的文件中,以便它们单独缓存,并且在浏览其他页面时可以直接从访问器的缓存中读取。有些网站的主页可能是例外。这些主页的自访问量可能不大,但这是用户浏览网站的***印象,也是引导用户浏览其他页面的起点。这些页面本身也可能应用大批Ajax本地刷新和技术。此时,CSS和JS文件可以直接写入页面中。

在ie中,包括重复的JS脚本将导致访问器的缓存不被应用。细心检查你的流程。删除重复的引用脚本应当不难。

除了标头中的人工重定向之外,网页重定向通常是无意中产生的,重定向的内容不会应用访问器的缓存。例如,当用户正在浏览时,服务器将转到/通过301,后跟“/”。如果服务器配置不好,也会给服务器带来额外的累赘。通过配置Apache的别名或应用Moduurewrite模块和其他办法,可以尽可能避免不必要的重定向。

还有其他一些,例如应用CDN分发机制、避免CSS表达式、避免ETag等。因为它们不常用,所以这里不再重复。

经过以上优化后,可以尝试用Yslow测试网页的性能得分,一般可以达到70分以上。

当然,除了对访问器前端和静态内容进行优化外,还对流程脚本、服务器、数据库和加载进行了优化。这些更深层次的优化办法对技术有更高的要求。本文的后半部分将要点讨论后端优化。

如何优化网站性能?针对前后端代码框架优化

2、后端优化

前端优化可以尽可能避免对服务器和带宽资源造成不必要的浪费,但随着网站浏览量的增长,仅靠前端优化并不能解决所有问题。后端软件处置并行请求的才能、流程运行效率、硬件性能和系统可扩展性将成为影响网站性能和稳定性的关键瓶颈。为了优化系统和流程的性能,我们可以从以下几个方面入手:

1)Apache、MySQL等软件的配置优化

虽然安装后Apache和MySQL等软件应用的默认设置足以让您的网站运行,但您仍然可以通过调整MySQL和Apache的一些系统参数来寻求更高的效率和稳定性。这个领域有很多专业的文章和论坛(例如:),为了掌握它,还需要进行深刻的研究和实践,这里不再讨论。

Apache是一个功能齐全但相对较大的web服务器。它的资源消费基本上与同时运行的进程数成正比。它消费大批服务器内存,通常在处置并行任务时效率很高。在某些情形下,我们可以应用轻量级Web服务器托管静态图像、样式表和JavaScript文件。只有这样,能力大大进一步静态文件的处置速度,大大减少内存占用。我应用的web服务器是来自俄罗斯的nginx。其他选项包含lighttpd和thttpd。

当前端服务器不足以敷衍用户浏览时,通过前端机实现web浏览的负载均衡是最快、最可行的计划。通过apachemodu2;Proxy可以轻松实现基于反向代理的负载平衡。建议应用nginx作为代理服务器,这比Apache更快。

2)使用缓存技术进一步数据库效率、文件缓存和分布式缓存

3)检查服务器的运行状况以查找影响性能的瓶颈

系统优化没有一劳永逸的办法。我们需要检测服务器的运行状况,及时发觉影响性能的瓶颈和可能存在的潜在问题,因为网站的性能总是取决于桶中的短板。可以编写一些脚本来检查Web服务的操作,一些开源软件也提供了良好的功能

一些技巧和技巧可以帮助你战胜目前的困难,但是如果你想让网站具备应对大范围浏览的才能,你需要从系统架构上做一个严密的计划。荣幸的是,许多先辈无私地分享了他们的架构。

二维码

添加客服微信,获取相关建站资料。

4008802488

13823549304

二维码

微信客服