大型网站架构(四)

PHP 2018-02-22 浏览(1541 评论(0

瞬时响应:网站的高性能架构

  • 1、用户

    从用户角度来开,网站的性能就是用户在浏览器上直观感受到的响应速度的快慢。在实践中,使用一些前端架构优化手段,如优化html样式,使用CDN,调整浏览器缓存策略,反向代理,也可以很大程度上改善视觉下的网站性能

  • 2、开发人员

    开发人员关注的主要是应用程序本身及其相关子系统的性能,包括响应延迟。系统吞吐量,并发处理能力等,主要优化手段有:使用缓存加速数据读取,使用集群提高吞吐,使用异步加快请求响应

  • 3、运维人员

    运维人员更关注资源利用率,如宽带能力,服务器硬件配置,数据中心网络架构等

性能测试指标:网站性能测试的主要指标有:响应时间、并发数,吞吐量,性能计数器等

  • 1、响应时间

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

  • 2、并发数

    只系统能够同时处理请求的数目

  • 3、吞吐量

    指单位时间内系统处理的请求数量,体现系统的整体处理能力,TPS(每秒事物数)HPS(每秒请求数)QPS(每秒查询数)

  • 4、性能测试方法

    性能测试可细分为:性能测试,负载测试,压力测试和稳定测试

性能优化策略

  • 1、性能分析

    排查一个网站的性能瓶颈和排查一个程序的性能瓶颈的手法基本相同:检查请求处理的各个环节的日志,分析哪个环节的响应时间不合理,然后检测数据,看是否系统资源确实不足

  • 2、性能优化

    可分为Web前端性能优化,应用服务器性能优化,存储服务器性能优化这三大类

web前端性能优化

一般来说是指业务逻辑之前的的部分,包括浏览器加载,网站视图模型,图片服务,CDN服务等。主要优化手段有优化浏览器的访问、使用反向代理,CDN。
  • 1、减少http请求

    主要手段有:合并CSS,js和图片,将多个CSS,js文件合并为一个文件,图片也可以进行合并

  • 2、使用浏览器缓存

    通过设置HTTP头部中Cache-control和expire的属性可以设定浏览器缓存。此外在更新静态资源时,应采用批量更新的方法,以免用户浏览器突然缓存失效更新缓存而引起的服务器负载过大

  • 3、启用压缩

    文件在服务器端对文件进行压缩,在浏览器端对文件进行解压缩,可以有效减少通信传输的数据量

  • 4、CSS放在页面最上面,jsvascript放在页面最下面

  • 5、减少cookie传输

  • 6、CDN加速

    CDN的本质仍然是一个缓存,而且将数据缓存在离用户最近的地方,即所谓的网络第一跳,CDN能够缓存的一般是静态资源

打赏

如果此文对你有所帮助,请随意打赏鼓励作者^_^

黄信强博客