网站的高性能架构

网站的高性能架构

在年前项目验收的时候甲方爸爸想了解如何提高网站的性能,为此学习了相关知识。

网站性能是客观的指标,可以具体体现到响应时间、吞吐量等技术指标,同时也是主观的感受,而感受则是一种与具体参与者相关的微妙的东西,用户的感受和工程师的感受不同,不同的用户感受也不同

1. 网站性能测试

性能测试是性能优化的前提和基础,也是性能优化结果的检查和度量标准。不同视角下的网站性能有不同的标准,也有不同的优化手段。

1.1不同视角下的网站性能

  • 1.1.1 用户视角的网站性能

    从用户角度,网站性能就是用户在浏览器上直观感受到的网站响应速度快还是慢

    • 优化手段:

      使用一些前端架构优化手段,通过优化页面HTML式样、利用浏览器端的并发和异步特性、调整浏览器缓存策略、使用CDN服务、反向代理等手段,使浏览器尽快地显示用户感兴趣的内容、尽可能近地获取页面内容,即使不优化应用程序和架构,也可以很大程度地改善用户视角下的网站性能

  • 1.1.2 开发人员视角的网站性能

    开发人员关注的主要是应用程序本身及其相关子系统的性能,包括响应延迟、系统吞吐量、并发处理能力、系统稳定性等技术指标。

    • 优化手段:

      使用缓存加速数据读取,使用集群提高吞吐能力,使用异步消息加快请求响应及实现削峰,使用代码优化手段改善程序性能。

  • 1.1.3 运维人员视角的网站性能

    运维人员更关注基础设施性能和资源利用率,如网络运营商的带宽能力、服务器硬件的配置、数据中心网络架构、服务器和网络带宽的资源利用率等

    • 优化手段

      建设优化骨干网、使用高性价比定制服务器、利用虚拟化技术优化资源利用等

1.2 性能测试指标

不同视角下有不同的性能标准,不同的标准有不同的性能测试指标,从开发和测试人员的视角,网站性能测试的主要指标有响应时间、并发数、吞吐量、性能计数器等

  • 1.2.1 响应时间

    指应用执行一个操作需要的时间,包括从发出请求开始到收到最后响应数据所需要的时间

  • 1.2.2 并发数

    指系统能够同时处理请求的数目,这个数字也反映了系统的负载特性。

  • 1.2.3 吞吐量

    单位时间内系统处理的请求数量,体现系统的整体处理能力

  • 1.2.4 性能计数器

    它是描述服务器或操作系统性能的一些数据指标。包括SystemLoad、对象与线程数、内存使用、CPU使用、磁盘与网络I/O等指标。这些指标也是系统监控的重要参数,对这些指标设置报警阈值,当监控系统发现性能计数器超过阈值时,就向运维和开发人员报警,及时发现处理系统异常。

1.3 性能测试方法

性能测试是一个总称,具体可细分为性能测试、负载测试、压力测试、稳定性测试。

2. Web前端性能优化

2.1 浏览器访问优化

  • 2.1.1 减少http请求

    • 2.1.1.1 为什么

      HTTP协议是无状态的应用层协议,意味着每次HTTP请求都需要建立通信链路、进行数据传输,而在服务器端,每个HTTP都需要启动独立的线程去处理

    • 2.1.1.2 怎么办

      合并CSS、合并JavaScript、合并图片,这样一次请求就可以获取多个需要的文件

  • 2.1.2 使用浏览器缓存

    将更新的频率都低,而访问平凡的文件缓存在浏览器中,可以极好地改善性能

  • 2.1.3 启用压缩

    在服务器端对文件进行压缩,在浏览器端对文件解压缩,可有效减少通信传输的数据量。有利就有弊,压缩对服务器和浏览器产生一定的压力,在通信带宽良好,而服务器资源不足的情况下要权衡考虑。

  • 2.1.4 CSS放在页面最上面、JavaScript放在页面最下面

    浏览器会在下载完全部CSS之后才对整个页面进行渲染,因此最好的做法是将CSS放在页面最上面,让浏览器尽快下载CSS。JavaScript则相反,浏览器在加载JavaScript后立即执行,有可能会阻塞整个页面,造成页面显示缓慢,因此JavaScript最好放在页面最下面。

  • 2.1.5 减少Cookie传输

    Cookie包含在每次请求和响应中,太大的Cookie会严重影响数据传输

  • 2.1.5 CDN加速

    CDN(Content Distribute Network,内容分发网络)的本质仍然是一个缓存,而且将数据缓存在离用户最近的地方,使用户以最快速度获取数据

  • 2.1.6 反向代理

    1、可以缓存静态内容,加快web访问;
    2、保护网站安全,相当于在Web服务器和可能的网络攻击之间建立了一个屏障。

3. 应用服务器性能优化

优化手段主要有缓存、集群、异步等。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值