影响性能指标有哪些?(学习记录)

本文仅作为学习记录,非商业用途,侵删,如需转载需作者同意。

影响系统性能的指标有哪些?关键的环节有哪些?

一、域名DNS解析

影响性能指标有哪些?(学习记录)_第1张图片

提升域名DNS解析的方式:

DNS缓存和DNS预解析:

  • 增大域名的TTL值,增大DNS服务器缓存这个域名的时间。可以提升缓存命中率
  • 使用dns-prefetch标签实现域名的预解析。浏览器在后台把要使用DNS解析的请求提早解析

例如阿里cdn的预解析
在这里插入图片描述

二、首字节

HTTP是应用层协议,TCP是传输层协议。所以HTTP是基于TCP连接基础上进行传输的,需要先建立TCP连接。

1、白屏时间

浏览器显示HTML的顺序是自上而下的,它的渲染顺序也是自上而下的。
用户输入网址到看到第一个视觉标志为止,称为白屏时间。

影响性能指标有哪些?(学习记录)_第2张图片

白屏时间越长,用户体验越差。
缩短白屏时间方法:

  • 减少文件的加载体积:例如gzip算法来压缩js,css,html文件及各种图片资源的加载体积
  • 加快JavaScript的执行速度,或者根据自身业务场景使用懒加载等策略

2、浏览器响应时间

浏览器响应时间:浏览器发起API接口请求,到响应数据完成渲染的时间。
涵盖了:网络往返时延+服务器响应时间+响应数据完成渲染时间
主要是服务器响应时间占了很大的一部分。

3、HTML下载和渲染

当服务器返回HTTP Response后,浏览器会陆续开始接受响应的数据,进行HTML的下载,渲染和显示。

页面展示还有2个重要指标:解析Dom树时间和OnlOnLoad时间。
方法:

  • 加快HTML的下载和解析的速度
  • 优化JavaScript和css文件和结构

首屏时间:用户输入URL按回车,到看到第一个页面的时间
影响性能指标有哪些?(学习记录)_第3张图片

响应时间的:2 5 10 原则
影响性能指标有哪些?(学习记录)_第4张图片

三、服务器响应

普通的路线如:用户请求–>nginx–>tomcat

基础设施指标

1、CPU利用率

  • 用户态(user)
  • 系统态(sys)
  • 等待态(wait)
  • 空闲态(idle)

CPU超过80%可能就有问题了

2、内存利用率

内存达到100%可能也不是瓶颈,因为内存中存放了缓存。

  • 主要衡量swap交换空间的利用率。
  • jvm是否有频繁的FGC,如有则需要优化

3、数据库

  • sql查询时间
  • key buffer命中率
  • query cache命中率
  • table cache命中率

四、整体性能指标

  • 吞吐量:
    单位时间内系统处理的数据量的总和
    吞吐量反应了服务器的处理能力和承受压力

  • 响应时间:
    API接口一次操作完成的时间:请求发送的时间+访问等待的时间+服务处理的时间

TPS(Transactions Per Second):服务器每秒处理的事物数。衡量吞吐量的一个重要参数
QPS(Queries Per Second):一台服务器每秒能够对应的查询次数,它是对一个特定的查询服务器,在规定时间内处理多少流量的衡量标准

五、服务端性能优化

  • 架构层面
    配置升级,集群优化,读写分离,分库分表,服务拆分

  • 网络层面
    网络专线,BGP选路,CDN优化

  • 后端层面
    动静分离,异步优化,并行优化,缓存优化,减少次数,压缩优化,锁优化,配置优化

影响性能指标有哪些?(学习记录)_第5张图片

影响性能指标有哪些?(学习记录)_第6张图片

你可能感兴趣的:(应用运维)