【读书笔记】2016.12.10 《构建大性能Web站点》

本文地址

 

享用提纲:

  1. 概述

  2. 知识点

  3. 待整理点

  4. 参阅文档

 

1.
概述


   1.1)【该书信息】

    《构建大性能Web站点》:

      图片 1

      –
百度百科

      – 本书目录:   

图片 2图片 3

第1章 绪论
1.1 等待的真相
1.2 瓶颈在哪里
1.3 增加带宽
1.4 减少网页中的HTTP请求
1.5 加快服务器脚本计算速度
1.6 使用动态内容缓存
1.7 使用数据缓存
1.8 将动态内容静态化
1.9 更换Web服务器软件
1.10 页面组件分离
1.11 合理部署服务器
1.12 使用负载均衡
1.13 优化数据库
1.14 考虑可扩展性
1.15 减少视觉等待
第2章 数据的网络传输
2.1 分层网络模型
2.2 带宽
2.3 响应时间
2.4 互联互通
第3章 服务器并发处理能力
3.1 吞吐率
3.2 CPU并发计算
3.3 系统调用
3.4 内存分配
3.5 持久连接
3.6 I/O模型
3.7 服务器并发策略
第4章 动态内容缓存
4.1 重复的开销
4.2 缓存与速度
4.3 页面缓存
4.4 局部无缓存
4.5 静态化内容
第5章 动态脚本加速
5.1 opcode缓存
5.2 解释器扩展模块
5.3 脚本跟踪与分析
第6章 浏览器缓存
6.1 别忘了浏览器
6.2 缓存协商
6.3 彻底消灭请求
第7章 Web服务器缓存
7.1 URL映射
7.2 缓存响应内容
7.3 缓存文件描述符
第8章 反向代理缓存
8.1 传统代理
8.2 何为反向
8.3 在反向代理上创建缓存
8.4 小心穿过代理
8.5 流量分配
第9章 Web组件分离
9.1 备受争议的分离
9.2 因材施教
9.3 拥有不同的域名
9.4 浏览器并发数
9.5 发挥各自的潜力
第10章 分布式缓存
10.1 数据库的前端缓存区
10.2 使用memcached
10.3 读操作缓存
10.4 写操作缓存
10.5 监控状态
10.6 缓存扩展
第11章 数据库性能优化
11.1 友好的状态报告
11.2 正确使用索引
11.3 锁定与等待
11.4 事务性表的性能
11.5 使用查询缓存
11.6 临时表
11.7 线程池
11.8 反范式化设计
11.9 放弃关系型数据库
第12章 Web负载均衡
12.1 一些思考
12.2 HTTP重定向
12.3 DNS负载均衡
12.4 反向代理负载均衡
12.5 IP负载均衡
12.6 直接路由
12.7 IP隧道
12.8 考虑可用性
第13章 共享文件系统
13.1 网络共享
13.2 NFS
13.3 局限性
第14章 内容分发和同步
14.1 复制
14.2 SSH
14.3 WebDAV
14.4 rsync
14.5 Hashtree
14.6 分发还是同步
14.7 反向代理
第15章 分布式文件系统
15.1 文件系统
15.2 存储节点和追踪器
15.3 MogileFS
第16章 数据库扩展
16.1 复制和分离
16.2 垂直分区
16.3 水平分区
第17章 分布式计算
17.1 异步计算
17.2 并行计算
第18章 性能监控
18.1 实时监控
18.2 监控代理
18.3 系统监控
18.4 服务监控
18.5 响应时间监控
参考文献
索引

本书目录

      –
下载地址

      –【内容简介】:

  《构建大性能Web站点(修订版)》是畅销修订版,围绕怎么构建大性能Web站点,从多个点、多单角度进行了周全的阐述,几乎涵盖了Web站点性能优化的享有内容,包括数据的网络传输、服务器出现处理能力、动态网页缓存、动态网页静态化、应用层数据缓存、分布式缓存、Web服务器缓存、反向代理缓存、脚本解释速度、页面组件分离、浏览器本地缓存、浏览器并发请求、文件之分发、数据库I/O优化、数据库访问、数据库分布式设计、负载均衡、分布式文件系统、性能监控等。在这些内容中充分抓住实质并构成履行,通过通俗易懂的文字与生动有趣的配图,让读者充分并深刻理解高性能架构的本色。

      –题外话:

      这本开,我是以
微信读书app上看的,感觉格外科学。可以分享想法,有计划还见面采购纸质的写,好好研读。

       

 

 

2. 知识点


  

1) 【函数追踪】
  Xdebug的外一个最主要跟踪功能就是函数跟踪,它可根据程序于实质上运行时的实行各个,跟踪记录有函数的履行时间,以及函数调用时之上下文,包括实际参数和归值。没错,这听起来正是我们迫切需要的。

2) 【联合索引】
  为平次查询对于一个数据表只能动用一个目录

3) 【最荒唐前方缀】
  你肯定都听说了“最荒唐前缀”这个组合索引的着力尺度

 

4)【数据库锁机制】
  机制是潜移默化查询性能的别一个要元素。当起多单用户并发访问数据库被某个平等资源的上,为了保并发访问的一致性,数据库必须经过锁机制来协调这些访问。

5) 【第三范式】
  第三范式要求于一个数据表中,非主键字段之间莫能够存在因关系

6)【不同层的负载均衡】
  事实上,在数额链路层(第二叠)、网络层(第三层)以及传输层(四层)都可兑现不同体制的负荷均衡,但有所不同的凡,这些负载均衡调度器的办事得由Linux内核来好

7) 【独享带宽】

  这才吃独享带宽,它独享的是路由器的如出一辙片段出口带来富,而不是交换机的牵动富,因为交换机本来就各个端口独享带宽而互不影响。

8) 【中国互联网】
  中国,由中国电信营业的互联网,也尽管是咱常常说的“中国宽带互联网(CHINANET)”,它的核心网络基本节点位于北京上地电信数据基本,它经过一直连通抱包括京在内的国内8只重大城市节点,进而连二级网络,然后层层延伸扩展,一直到周边城市、IDC、家庭宽带接入等。

9)【Nmon】

  我们用Nmon工具监视服务器每秒上下文切换次数。Nmon是一个格外不错的Linux性能监视工具

10) 【Apache多进程模型】
  我们解Apache这种多进程模型的支出限制了她的连发连接数,但是Apache也来自我之优势,比如从平安与兼容性的角度看,多进程模型的优势正反映于它相对安全的独门进程,任何一个子经过的夭折都无会见影响Aapche本身,Apache父进程可以创建新的子进程

11) 【脚本解释器】
  脚本解释器通常运行在Web服务器的过程中(如Apache-prefork模型的子进程),或者因fastcgi进程的花样独立运转。

12)【PHP中引入Java】
  举个例,对于部分PHP开发者来说,要想一直以Web应用程序中援Java类库,就得在PHP中加载Java扩展模块,

13) 【ESI】

  ESI是由W3C制定的正式,它的语法非常相近于SSI(Server Side
Includes),可以像SSI一样当网页中嵌入子页面,但不同的凡,SSI是以Web服务器端组装内容,而ESI则是于HTTP代理服务器上组建内容,包括反往代理。

14) 【wordpress】
  比如用Wordpress搭建之一个blog,动态内容和数据库完全可经过UNIX
Socket来建更加便捷的数据交换。

15)【数据库状态】
  mysql> show status;

  mysql> show innodb status;
  show processlist命令
  比如我们由此dig命令看到www.sina.com.cn指为了16高服务器

16)【索引的数据结构】
  索引自的数据结构(MySQL使用BTree、Hash以及RTree)决定了其具有十分迅速之搜寻算法,我们差不多不用操心这片底支出

17) 【创建索引的情】
  一般的话,如果一个字段出现在查询语句中基于行之精选、过滤或排序条件被,那么也该字段建立目录便是发价之

18)【最荒唐原则】
  你势必既听说过“最荒唐前方缀”这个做索引的骨干原则

19)【锁定和等】
  机制是熏陶查询性能的外一个重点元素。当有差不多单用户并发访问数据库中之一一样资源的时候,为了确保并发访问的一致性,数据库必须通过锁机制来协调这些访问

20)【反向代理nginx】

  我们清楚反向代理服务器工作于HTTP层面,对于所有HTTP请求都设亲转

21)【粘滞回话】

  我们得开的尽管是调动调度策略,让用户以同糟对话周期内的具有请求镇转发到同华一定的后端服务器上,这种机制也称粘滞会话(Sticky
Sessions),要兑现其的关键在于如何规划持续性调度算法。

22) 【持久性算法】
  还好下Cookies机制来设计持久性算法,比如调度器将某后端服务器的号子追加至写给用户的Cookies中,这样调度器便好以该用户就的求中领悟该转发让哪台后端服务器。这样做得更进一步细粒度地追踪到各国一个用户,试想一下,当起多用户隐藏于一个公然IP地址后时,利用Cookies的持久性算法将展示越来越实用。

23)【最好及当地无关】
  以后端服务器上保存Session数据与本地化缓存,的确是同样起不明智之事务,它使得后端服务器显得过于个性化,以至于和所有系统格格不入,如果同意的话,我们应有尽量避免这样的筹划,比如用分布式Session或者分布式缓存等,让后端服务器的动尽量与本地无关,也只是再次好地适应环境

24)【IP负载均衡】
  回忆一下大网分层模型,事实上,在数链路层(第二重合)、网络层(第三交汇)以及传输层(四层)都得兑现不同体制的载荷均衡,但有所不同的凡,这些负载均衡调度器的做事务必由Linux内核来完成

25) 【Iptables实现负载均衡】
  说到iptables,最多之采用场景就是是防火墙了,我几乎也每令Linux服务器都坚决地展开iptables防火墙配置

26) 【一个网卡多只IP】
  一个网络接口理所当然地有一个IP地址,但是除此之外本条之外,我们还好啊她部署更多只IP地址,它们叫IP别名。这里的网络接口可以是情理网卡(如eth0、eth1),也得以是虚拟接口(如回环网络接口lo)。根据规定,一个网络接口最多得设置256只IP别名,没错,你可以管一个C类网段的兼具IP地址都安装到一个网卡上,理论及没有另外问题。
 
汝恐怕已经展开了嘴,一个网卡竟然可以装多独IP地址,并且有所同等的MAC地址,没错,它们可死好地工作。

27) 【LVS-DR.DNS-RR】
  幸运的凡,对于LVS-DR,一旦调度器失效,你可就以LVS-DR切换到DNS-RR模式,这几只有待加几长条DNS记录,将域名解析及几近大实在服务器的实事求是IP地址即可。一旦调度器恢复后,你就是好还修改DNS记录,将域名仅针对调度器,切换回LVS-DR。

28)【基于IP隧道的呼吁转发】
  以及LVS-DR的法则非常类似,基于IP隧道(IP
Tunneling)的载重均衡系统一样好用LVS来落实,也称之为LVS-TUN。

29)【共享文件系统】
  对于共享文件系统的实现,常用之发生NFS(Network File System)和Samba

30)【RPC】
  对于污染输层,RPC服务默认使用了UDP,

31)【SSH】
  提到SSH(Secure
Shell),大家连无生疏,它是白手起家以应用层和传输层基础及的安康协议,可以用来传输任何数,我们盼望因此她来实现文件复制,当然,这属于主动分发的艺术。

32)【实现公文分发的http扩展协议 WebDAV】
  WebDAV的筹划目的尚连了对于版本控制的支持,还记Subversion的HTTP工作章程吧?它就是是运用WebDAV来实现的。

33)【更新上级目录时间】
  操作系统本身对文本之改动并无见面自动更新上级目录的改时间,一些特定的应用程序会这么做,比如通过VI编辑某个文件并保留后,你晤面发现其的享有上级目录都见面自动更新修改时间。那么,对于文本共,我们为必想方自己来促成。

34) 【降低开销,提高壮大】
  越是响应数据包远远超越请求数据包的劳动(如视频),就愈加应降低调度器转移要的支付,也即更能加强总体扩展能力,最终为就算愈依赖让WAN出口带来富

35)【MogileFS】

  MogileFS是一个开源之分布式文件系统,它采取Perl编写,包括追踪器、存储节点,以及部分管理工具,除此之外,追踪器使用MySQL来囤积分布式文件系统运行面临之拥有信息。

36)【MySQL主从复制】

  我们以MySQL为例,它支持主从复制,配置并无复杂,简单地说,你偏偏需要就以下简单点:
  ● 开启主服务器上之次迈入制日志(log-bin)。
  ● 在主服务器和由服务器上个别开展简短的布置以及授权。
  我们掌握,MySQL的主从复制是依据主服务器的老二进制日志进行的,也就是说主服务器日志中记录的操作会在由服务器上进行重放,从而实现复制,所以主服务器必须被二上前制日志,它见面自动记录所有对数据库来更新的操作,也包括黑的翻新操作,比如没有删任何实际记录之DELETE操作。
明朗,这种复制是异步进行

37)【数据库反向代理】

  使用数据库反向代理
  如果您于利用MySQL,那么好尝试MySQL
Proxy,它工作在应用程序和MySQL服务器之间,负责所有请求与应数据的转速

38)【站点成长】

  事实上,很多科普的站点多还经历了于简单主从复制到垂直分区,再到水平分区的步调,这是一个自然的成才历程

39)【分区反向代理】
  分区反向代理
  还记前面提到的MySQL
Proxy吗?它帮忙应用程序实现了读写分离,而在这里,另一个开源产品Spock
Proxy也由至了仿佛之意图,它好扶持应用程序实现程度分区的访调度,这表示我们不欲以应用程序中保障那些分区对承诺涉及了。

40) 【Gearman】
  Gearman是一个开源产品,它的初衷是故来落实远程函数调用,这样一来,它就是可以将计转移到其它服务器上,而这整个还巧妙地潜伏于它们提供的API中

41)【Map/Reduce】
  但是在一定之并行计算框架,我们来拘禁就介绍的Map/Reduce。

42)【Nmon】
  Nmon是同一缓慢工作以服务器本地的实时督查软件,它好提供时间距离也秒的系统监控

43)【监控中心】
  当然,我们还欲树立监控中心,对这些状态数据进行统计与显现。幸运的凡,有好多发端源产品方可拉我们,这里我们第一因Cacti为例,它完全可以支持刚刚提到的这些系统监控,并且绘制有相应的图,便于我们浏览。
Cacti采用RRDtool作为监督数据的贮存引擎,它是相同栽专门对绘制坐标图而规划的囤积格式,相对于其它存储结构吧要省成千上万储存空间,这为我们马拉松监控大量服务器提供

 

 

**3. 急需整理点**


 

 

 

**4.
参照文档**


 

网站地图xml地图