《高性能网站建设指南》学习笔记
无意中看到同事有本《高性能网站建设指南》,趁着有时间借来读读。
简单的讲这是一本前端优化网站的书,作者总结了14条性能规则,我这里只记录下方便实用的方法。
规则一:减少HTTP请求
1.CSS Sprites 合并图片
2.合并脚本和样式表
规则二:使用内容发布网络(CDN)
规则三:添加Expires头
1.编辑动态语言生成的HTML页面时,配置长久的Expires头,可以缓存组件,在后续的页面浏览中减少不必要的HTTP请求。
规则四:压缩组件
1.gzip可以压缩HTML JS css
2.修改Apache 配置gzip
规则五:将样式表放在顶部
规则六:将脚本放在底部
规则七:避免CSS表达式
1.使用css里expression()方法会频繁求值
2.使用js事件处理
规则八:使用外部JavaScript和CSS
规则九:减少DNS查找
1.通过使用Keep-Alive和较少的域名来减少DNS查找
规则十:精简JavaScript
规则十一:避免重定向
规则十二:移除重复脚本
规则十四:配置ETag
配置或移除ETag
规则十五:使Ajax可缓存
确保Ajax请求遵守性能指导,尤其应具有长久的Expires头
《高性能网站建设指南》学习笔记相关推荐
- 第二行代码学习笔记——第六章:数据储存全方案——详解持久化技术
本章要点 任何一个应用程序,总是不停的和数据打交道. 瞬时数据:指储存在内存当中,有可能因为程序关闭或其他原因导致内存被回收而丢失的数据. 数据持久化技术,为了解决关键性数据的丢失. 6.1 持久化技 ...
- 第一行代码学习笔记第二章——探究活动
知识点目录 2.1 活动是什么 2.2 活动的基本用法 2.2.1 手动创建活动 2.2.2 创建和加载布局 2.2.3 在AndroidManifest文件中注册 2.2.4 在活动中使用Toast ...
- 第一行代码学习笔记第八章——运用手机多媒体
知识点目录 8.1 将程序运行到手机上 8.2 使用通知 * 8.2.1 通知的基本使用 * 8.2.2 通知的进阶技巧 * 8.2.3 通知的高级功能 8.3 调用摄像头和相册 * 8.3.1 调用 ...
- 第一行代码学习笔记第六章——详解持久化技术
知识点目录 6.1 持久化技术简介 6.2 文件存储 * 6.2.1 将数据存储到文件中 * 6.2.2 从文件中读取数据 6.3 SharedPreferences存储 * 6.3.1 将数据存储到 ...
- 第一行代码学习笔记第三章——UI开发的点点滴滴
知识点目录 3.1 如何编写程序界面 3.2 常用控件的使用方法 * 3.2.1 TextView * 3.2.2 Button * 3.2.3 EditText * 3.2.4 ImageView ...
- 第一行代码学习笔记第十章——探究服务
知识点目录 10.1 服务是什么 10.2 Android多线程编程 * 10.2.1 线程的基本用法 * 10.2.2 在子线程中更新UI * 10.2.3 解析异步消息处理机制 * 10.2.4 ...
- 第一行代码学习笔记第七章——探究内容提供器
知识点目录 7.1 内容提供器简介 7.2 运行权限 * 7.2.1 Android权限机制详解 * 7.2.2 在程序运行时申请权限 7.3 访问其他程序中的数据 * 7.3.1 ContentRe ...
- 第一行代码学习笔记第五章——详解广播机制
知识点目录 5.1 广播机制 5.2 接收系统广播 * 5.2.1 动态注册监听网络变化 * 5.2.2 静态注册实现开机广播 5.3 发送自定义广播 * 5.3.1 发送标准广播 * 5.3.2 发 ...
- 第一行代码学习笔记第九章——使用网络技术
知识点目录 9.1 WebView的用法 9.2 使用HTTP协议访问网络 * 9.2.1 使用HttpURLConnection * 9.2.2 使用OkHttp 9.3 解析XML格式数据 * 9 ...
- 安卓教程----第一行代码学习笔记
安卓概述 系统架构 Linux内核层,还包括各种底层驱动,如相机驱动.电源驱动等 系统运行库层,包含一些c/c++的库,如浏览器内核webkit.SQLlite.3D绘图openGL.用于java运行 ...
最新文章
- 将 Shiro 作为一个许可为基础的应用程序 五:password加密/解密Spring应用
- 省市地区表 mysql数据库
- 【arduino】arduino代码运行时间测试函数,代码性能运行时间测试方法
- 在ABAP里取得一个数据库表记录数的两种方法
- ajax页面载入动画,添加加载动画,jQuery的AJAX .load()
- angular 居中_Angular Material design设计
- [bzoj4763]雪辉[bzoj4812][Ynoi2017]由乃打扑克
- django创建模板报错:TemplateDoesNotExist at
- 当你是个35岁的硬件工程师,该如何选择未来的职业道路
- 网站后台爆破工具:WebCrack
- 一脸懵逼搭建Zookeeper分布式集群
- 华硕主板如何用u盘启动计算机,最新华硕主板bios设置u盘启动教程
- 今日头条(java后台开发)——实习生面试
- ios应用跳转小程序Universal Links链接验证不通过
- ES6-ES12所有特性详解
- 修改我的世界服务器怪物爆率,精英生成概率以及部分能力参数设置_我的世界精英怪mod教程如何调控怪物属性和掉落物__单机攻略_跑跑车单机游戏网...
- MP4文件中h264的 SPS、PPS获取
- ppt在线快速转换成pdf的方法
- 重做日志文件(redo log file)
- 五险一金 | 2020年个人所得税税率表
热门文章
- Oracle和Mysql获取uuid的方法对比
- 【自动化__持续集成】___java___重载
- jQuery命名空间,插件开发
- ubuntu查看端口占用
- wget指定目录下载以及其它的使用方式
- Ubuntu 14.04 LTS, 64bit, cuda 7, Caffe环境配置编译和安装
- Face Alignment at 3000 FPS via Regressing Local Binary Features(CVPR2014)读后感(first pass)
- 从0开始学习GitHub系列之「向GitHub 提交代码」
- Logistic Regression--逻辑回归算法汇总
- 英国税务机构HMRC被指收集了510万英国人的语音记录