以下为阅读《构建高性能web站点》郭欣 著

这本书的适合读者:

1.编写web程序、关心站点性能,并且希望自己做的更加出色的开发人员

2.关心性能和可用性的web架构师

3.希望构建高性能web站点的技术负责人

4.实施web站点性能优化或者规模扩展的运维人员

5.与web性能有关的测试人员

第一章的重点总结

1.等待的真相

a) 在用户等待的时间里,大概发生了以下几部分时间:

i. 数据在网络上传输的时间:包括两个部分,浏览器端主机发出请求经过网络到达服务器的时间,服务器回应数据经过网络到达浏览器主机的时间。也称为响应时间,他的决定因素主要包括发送的数据量和网络带宽。站点服务器处理请求并回应数据的时间-

ii. 站点服务器处理请求并生成回应数据的时间。主要消耗在服务器端,包括非常多的环节,我们一般用“每秒处理请求数”指标来衡量这部分时间,也称吞吐率:单位时间内处理的请求数。影响吞吐率的因素非常多,比如服务器的并发策略、I/O模型、I/O性能、CPU核数,当然也包括应用程序本身的逻辑复杂度

iii. 浏览器本地计算和渲染的时间。主要消耗在浏览器端。依赖因素包括浏览器采用的并发策略、样式渲染方式、脚本解释器的性能、页面大小、页面组件数量、页面组件缓存状况、页面组件域名分布以及域名DNS解析等

2.瓶颈在哪里

a) 系统的瓶颈是指影响性能的关键因素,这个因素随着系统的运行又会发生不断的变化或迁移。一旦真正找到影像系统性能的主要因素,坚决对其进行调整和优化

3.增加带宽

4.减少网页中的http请求

a) 设计更简单的网页,使其包含较少的图片和脚本,但可能牺牲了美观和用户交互

b) 将多个图片合并为一个文件,利用css背景图片的偏移技术呈现在网页中,避免多个图片的下载

c) 合并javascript脚本或者css样式表

d) 充分利用http中浏览器的cache策略,减少重复下载

5.加快服务器脚本计算速度

a) 对于拥有较强商业支持的脚本语言,均有内置的优化方案。比如解释器对某个脚本程序第一次解释的时候将中间代码缓存起来,以供下次使用。

b) 对于开源类的脚本语言也有很多第三方组件提供此功能。比如php的apc组件等。下载地址:http://pecl.php.net/package/apc参考学习:http://www.cnblogs.com/shamrocker/archive/2012/08/23/2651873.html

6.使用动态内容缓存:将动态内容的html输出结果缓存起来,成千上万的缓存文件如何存储

7.使用数据缓存:数据缓存存储在哪里呢?需要考虑多方面的因素:速度、共享、

常用缓存技术参考:http://www.cnblogs.com/softwaredevelop/archive/2010/04/07/1706322.html

8.将动态内容静态化:虽然避免了可观的重复计算,但是每次还需要调用动态脚本解释器判断缓存是否过期以及读取缓存,这似乎有些多余,而且关键消耗了不少时间

9.更换web服务器软件:有人拿着所谓的测试数据说apache已经过时,你相信吗?另一方面,你正在使用的web服务器软件也许让你无比的自豪,可你知道复杂的配置背后的本质吗?你知道为什么它仅仅在处理你的站点请求时如此出色吗?如果让你编写web服务器软件,你可以让他更快一些吗。我们必须停止盲目的选择,停止对表面现象的崇拜,我们需要学习一些稍显底层的知识来武装自己。

10.页面组件分离

11.合理部署服务器:ip,运营商等的选择

12.使用负载均衡:需要通过各种不同的方法实现web负载均衡。可能是简单的http重定向,或者是给予DNS的轮询解析,或者通过反向代理服务器来实现负载均衡调度,还可以通过lvs来组建服务器集群

13.优化数据库:1.应用程序数据访问组件设计,合理的数据表结构设计,频繁的数据库链接和释放,合理使用各种类型的索引,了解数据库存储引擎特性。将数据散列在多台主机,包括必要的冗余数据,以此来合理的分散数据库的密集访问,数据库扩展便成为我们考虑的方案

14.考虑可扩展性:可扩展性的目的是适应负载的变化

15.减少视觉等待

 

构建高性能web站点-1的更多相关文章

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

    本文地址 分享提纲: 1. 概述 2. 知识点 3. 待整理点 4. 参考文档 1. 概述 1.1)[该书信息] <构建高性能Web站点>: -- 百度百科 -- 本书目录: 第1章 绪论 ...

  2. 《构建高性能web站点》随笔 无处不在的性能问题

    前言– 追寻大牛的足迹,无处不在的“性能”问题. 最近在读郭欣大牛的<构建高性能Web站点>,读完收益颇多.作者从HTTP.多级缓存.服务器并发策略.数据库.负载均衡.分布式文件系统多个方 ...

  3. 构建高性能web站点--读书大纲

    用户输入你的站点网址,等了半天..还没打开,裤衩一下就给关了.好了,流失了一个用户.为什么会有这样的问题呢.怎么解决自己站点“慢”,体验差的问题呢. 在这段等待的时间里,到底发生了什么?事实上这并不简 ...

  4. [拇指飞动]构建高性能Web站点(1)

    <构建高性能Web站点>中提到了Aphache, Nginx和lighthttpd. 把我的笔记share一下. 一般来讲Apache主要是基于多进程模型,早期的fork模式会为每一个re ...

  5. 构建高性能WEB站点笔记三

    构建高性能WEB站点笔记三 第10章 分布式缓存 10.1数据库的前端缓存区 文件系统内核缓冲区,位于物理内存的内核地址空间,除了使用O_DIRECT标记打开的文件以外,所有对磁盘文件的读写操作都要经 ...

  6. 构建高性能WEB站点笔记二

    构建高性能WEB站点笔记 因为是跳着看的,后面看到有提到啥epoll模型,那就补充下前面的知识. 第三章 服务器并发处理能力 3.2 CPU并发计算 进程 好处:cpu 时间的轮流使用.对CPU计算和 ...

  7. 构建高性能web站点笔记一

    构建高性能web站点笔记 第三章 服务器并发处理能力 3.1吞吐率 描述服务器在实际运行期间单位时间内处理的请求数.也就是一定并发用户的情况下,服务器处理请求能力的量化体现. 吞吐率的前提包括: 并发 ...

  8. 【转】构建高性能WEB站点之 吞吐率、吞吐量、TPS、性能测试

    内容参考:构建高性能WEB站点.pdf 一.吞吐率 我们一般使用单位时间内服务器处理的请求数来描述其并发处理能力.称之为吞吐率(Throughput),单位是"req/s".吞吐率 ...

  9. 构建高性能WEB站点之 吞吐率、吞吐量、TPS、性能测试

    内容参考: 构建高性能WEB站点.pdf 一.吞吐率 我们一般使用单位时间内服务器处理的请求数来描述其并发处理能力.称之为吞吐率(Throughput),单位是 “req/s”.吞吐率特指Web服务器 ...

  10. 《构建高性能 Web站点》笔记

    书名:构建高性能Web站点 出版社: 电子工业出版社 ISBN:9787121170935 一  绪论 等待的时间: (1) 数据在网络上的传输时间 (2) 站点服务器处理请求并生成回应数据的时间 ( ...

随机推荐

  1. springcloud+eureka简单入门案例

    springcloud+eureka简单入门案例 一.服务提供者 直接提供服务,入门案例没有特别要设置的地方,注意下端口,由于要启动多个服务,可能会冲突 配置文件(src/main/resources ...

  2. Java常见知识点(一)

    1.+不仅可作为加法运算符使用,还可作为字符串连接运算符使用.   2.a = b = c = 7;//虽然java支持这种一次为多个变量赋值的写法,但这种写法导致程序的可读性降低,因此不推荐这样写. ...

  3. ZOJ-3822

    Domination Time Limit: 8 Seconds      Memory Limit: 131072 KB      Special Judge Edward is the headm ...

  4. 前端工程师必备PS技能

    PS参考线及其辅助 视图-->新建参考线 也可以快捷键Ctrl+R,显示区的上侧和左侧就会出现标尺.任意点选中,并拖动标尺,便会出现浅蓝色的辅助线.只有在移动工具下,才能拖动某一条参考线. 删除 ...

  5. 理解和上手Redux

    顾名思义本文分两个部分,理解和上手,第一部分我先讲个故事,这个故事也许不是特别形象,但对大家理解Redux一定有所帮助.第二部分我举个例子. 先讲个故事: 一个餐厅(应用),我是顾客(用户),这个餐厅 ...

  6. css :not 选择器

    :not 选择器是css3里面的 :not([class]){color:red;}  // 没有class属性的元素都设置为红色 p:not([class]){color:red;} // 没有cl ...

  7. HDU 1017 A Mathematical Curiosity (输出格式,穷举)

    #include<stdio.h> int main() { int N; int n,m; int a,b; int cas; scanf("%d",&N); ...

  8. [BZOJ 1799] self 同类分布

    Link: BZOJ 1799 传送门 Solution: 一句话的题目,看得爽,做得烦 一般这类和数位相关的都是数位$dp$吧 不过一开始还是感觉不太可做,毕竟每个数模数不同 但要发现,模数最高也只 ...

  9. 【AC自动机】【矩阵乘法】【等比数列】hdu2243 考研路茫茫——单词情结

    题解:http://blog.csdn.net/xingyeyongheng/article/details/10005923 这里采用了二分法求等比数列前n项和. 等比数列前n项和也可以用矩乘快速幂 ...

  10. 【KM】POJ2195/HDU1533-Going home

    //最近没什么时间quq据说长得帅的人都在切八中,然而长得丑的人只能水水裸题 [题目大意] 给出一张地图及人和房屋的位置,求出每个人回到不同房屋所具有的最小代价和. [思路] 最小权匹配,先O(n^2 ...