大型网站技术架构 读书笔记2 核心架构要素

网站架构技术的核心架构要素

  本部分是本书的重点,涉及书中第3章到第8章6个章节的内容,占了全书内容的大半篇幅。其中第三章是后面五章的概述和总结,而第四到第八章则分别介绍了性能可用性伸缩性扩展性安全性这五大核心架构要素。
  对于一个软件系统来说,其单一系统功能需求的实现虽然也不容易,这部分内容可以参照代码大全这本书;但其在系统中的位置及和其他模块的关系更需要注意,设计不好则会大大增加系统的复杂性。好在,在网站架构方面,有大量的模式可以借鉴,参照笔记1。在架构设计过程中,需要注意的另一大因素就是平衡好上述五大核心架构要素的关系以实现需求架构目标;也可以通过考察这些架构要素来衡量一个软件架构设计的优劣,判断其是否满足期望
  下面将就五大核心架构要素一一展开说明,每个架构要素都有可能涉及到笔记1中所谈到的模式。这也是本书的一大特点,各个知识点之间耦合度比较高,难以解耦。
  由于本篇内容过多,会在介绍下面五个核心要素前,分别给出这五个部分的超链接,提供独立访问,可选择有兴趣的部分进行阅读,超链接后面再附上所有五个核心要素的全文,共约1万字,个人建议分开阅读。

  笔记2.1核心架构要素之高性能

  笔记2.2核心架构要素之高可用

  笔记2.3核心架构要素之可伸缩

  笔记2.4核心架构要素之可扩展

  笔记2.5核心架构要素之安全


  下面是全文:


一 网站的高性能架构

  主要问题:在用户高并发访问时,会产生很多网站性能问题;所以,网站高性能架构或者说网站性能优化的主要工作是改善高并发访问情况下的网站响应速度
  网站性能:性能这个词涉及到的面是相当大的。它既有着自己的客观指标,也涉及用户的客观感受;而且,在不同视角下,各方的关注点也不一样。本部分的主要内容就是如何构建一个高性能的网站;通过分析不同层面下的网站优化措施,从而实现在性能测试的前提下进行针对性优化。

1.1 不同视角下的网站性能

  在不同视角下,各方的关注点不一样;不同视角下的网站性能标准不同,优化手段也不同。

1 用户视角下的网站性能

  从用户角度,网站性能就是用户在浏览器上直观感受到的网站响应速度。这里的性能除了与请求的服务服务端响应速度之外;还与客户端机器浏览器网络带宽等有关。
  性能优化:这里的优化主要是优化用户感官。使用前端架构优化手段,使浏览器尽快地显示客户感兴趣的内容、尽可能地获取页面内容,从而改善客户视角下的网站性能。

2 开发人员视角的网站性能

  从开发人员角度,网站性能就是应用程序本身和其相关子系统的性能,包括响应延迟系统吞吐量并发处理能力系统稳定性等技术指标。
  性能优化:使用缓存加速数据读写;使用集群提高吞吐能力;使用异步消息加快请求响应以及削峰,使用代码优化改善程序性能

3 运维人员视角的网站性能

  从运维人员角度,网站性能就是基础设施性能资源利用率
  性能优化:建设优化骨干网、使用高性价比定制服务器、利用虚拟化技术优化资源利用。

1.2 网站性能测试

  性能测试性能优化的前提和基础,也是性能优化结果的检查和度量标准。

1.2.1 性能测试指标

1. 响应时间
  定义:指应用执行一个操作需要的时间,包括从发出请求开始到受到最后响应的时间。响应时间是系统最重要的性能该指标,直观地反映了系统的快慢
2.并发数
  定义:指系统能够同时处理请求的数目,反映了系统的负载特性。对于网站而言,并发数即网站并发用户数,即同时提交请求的用户数。
  与人数有关的数据还有网站注册用户数网站在线用户数,其中

网站注册用户数 >> 网站在线用户数 >> 网站并发用户数

  作用:在网站设计初期,运营团队需要根据自身产品对用户数进行推断,并以此作为系统非功能设计的重要依据。
3. 吞吐量
  定义:指单位时间内系统处理的请求数量,体现系统的整体处理能力
  衡量指标TPS——每秒事务数(最常用量化指标);HPS——每秒HTTP请求数;QPS——每秒查询数。
  并发数、吞吐量、响应时间关系:在系统并发数从小到大过程中,系统吞吐量先逐步上升,响应时间小幅上升;达到一个极限后,吞吐量下降,响应时间快速上升;达到系统奔溃点后,系统资源耗尽,吞吐量为零,系统失去响应。
4.性能计数器
  定义:描述服务器和操作系统性能的一些数据指标
  指标系统负载——当前正在被CPU执行和等待被CPU执行的进程数目总和;内存使用CPU使用

1.2.2 性能测试方法

  分类:性能测试是总称,可细分为性能测试负载测试压力测试稳定性测试
  定义:性能测试是一个不断对系统增加访问压力(增加并发请求数),以获得系统性能指标最大负载能力最大压力承受能力的过程。
  关键位置:系统最大负载点,系统奔溃点

1.2.3 基于性能测试的性能优化策略

  如果性能测试结果不能安祖设计或业务需求,就需要寻找系统瓶颈,分而治之,逐步优化。
  性能分析:对用户从浏览器发出请求到数据库完成操作事务的整个经历的各个环节进行分析,排查可能出现性能瓶颈的地方,定位问题
  性能分析手法:1.检查日志,跟预期进行对比࿱
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值