1. Buffer概述
Buffer就是一个缓冲区,一个内存地址空间,主要用于存储数据区域
1.1 系统Buffer例子
当我们点击保存文件时,系统会将这些数据保存到buffer中,当这些buffer被写满后,然后才将buffer中的数据写到磁盘中
1.2 php 的buffer与操作系统的buffer类似但是不完全一样;
当我们执行php程序的时候,如果它有输出数据,它并不是直接将数据通过tcp传输给客户端浏览器并且显示。同样,它也经历了一个buffer。当我们执行echo语句或html代码等等,它先是到缓冲区,当缓冲区被写满之后,脚本进程就会将php的buffer中的数据通过tcp然后传给客户端浏览器,这时它就能把内容呈现出来;
输出流程:内容 -> php buffer -> tcp -> 终端 (浏览器);
2 明确动态界面和静态界面
2.1动态页面
-- 当加载界面的时候,其会动态的加载动态程序(PHP等等)
-- PHP文件执行阶段
语法分析 --> 编译 --> 运行
-- 动态程序:
连接数据库服务器或者缓存服务器
获取数据
填充到模板
呈现给用户
2.2静态页面
HTML文件
直接运行,无需语法分析,编译
3 关于优化页面响应时间
3.1 动态页面静态化
如果页面中一些内容不经常改动,动态页面静态化是非常有效的加速方法
优点:减少服务器脚本的计算时间;从而降低服务器的响应时间
缺点:不适用于内容经常改变的应用;例如微博等
3.2 优化数据库
3.3 使用负载均衡
3.4 使用缓存
4 关于动态URL地址设置静态形式
http://state.com/index.php?c=play&a=index&id=123456
转换为
http://state.com/index.php/play/123456.shtml
转换后页面依然是动态界面;(伪静态)
5. PHP的静态化介绍
PHP静态化 分为 纯静态 和 伪静态
纯静态分为局部静态和全部静态
全部纯静态 网页的页面内容在某个时间间是固定的,而局部纯静态在某个时间点可能会发生变化。
伪静态:URL地址转化为类似于静态的地址,需要Apache服务器配置