web缓存技术

缓存的作用其实就是把数据库中的数据以其他更高效的读取形式保存,避免重复读取数据库而降低程序的响应时间,因为web程序的90%的瓶颈在于数据库的读取上.

关于读取缓存的理论我简单介绍一下,普通的web程序的执行步骤是这样的:

用户请求 -> 程序访问数据库读取数据 -> 显示数据

而使用缓存后的web程序的执行步骤则是这样:

用户请求 -> 程序检查缓存的数据是否存在-> 不存在 -> 读取数据库 -> 将数据写入缓存中 -> 显示数据

用户请求 -> 程序检查缓存的数据是否存在-> 存在 -> 读取缓存 -> 显示数据

你知道的那些缓存方式,就是把缓存的数据存储不同方法,例如存在文件中,存在内存中,因为这些方式读取数据的时间比数据库读取要快得多.

浏览器缓存的概念与上面的很像,像对图片,js,css文件的请求,我们在服务器上的http响应头中增加一个该文件的过期时间,那么浏览器在下载这些文件后在它们过期之前就不会再向服务器请求这些文件,转而读取本地的浏览器缓存,这样也能降低web服务器的负载.实现这类的缓存一般是配置web服务器来实现

php本身没有所谓处理缓存的函数,因为缓存实现的方式很多种.如文件缓存,那么就是操作文件的相关函数,如memcached,php也有相关的扩展函数支持.缓存如何使用取决于你的程序缓存方式和内容


ob_系列函数是处理向浏览器发送数据的缓存,跟数据缓存是两码事

如果你不使用ob_start();那么你输出一个echo "gaga"; 这个gaga会立刻发送到浏览器上后面的程序代码还会继续执行,而使用ob_start();之后你php代码中输出gaga,php会把这些输出的内容放到缓冲区中,等代码执行到完毕后再发给浏览器.用了ob_start,你可以后输出内容的行后通过ob_get_contents获取到输出的内容(因为还没发送到客户端那去)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值