zoukankan      html  css  js  c++  java
  • CI框架 -- 网页缓存

    CodeIgniter 可以让你通过缓存页面来达到更好的性能。

    尽管 CodeIgniter 已经相当高效了,但是网页中的动态内容主机的内存 CPU数据库读取速度等因素直接影响了网页的加载速度。 依靠网页缓存, 你的网页可以达到近乎静态网页的加载速度,因为程序的输出结果 已经保存下来了。

    缓存是如何工作的?

    可以针对到每个独立的页面进行缓存,并且你可以设置每个页面缓存的更新时间。 当页面第一次加载时,缓存将被写入到 application/cache 目录下的文件中去。 之后请求这个页面时,就可以直接从缓存文件中读取内容并输出到用户的浏览器。 如果缓存过期,会在输出之前被删除并重新刷新

    开启缓存

    将下面的代码放到任何一个控制器的方法内,你就可以开启缓存了:

    $this->output->cache($n);  //其中 $n 是缓存更新的时间(单位分钟)

    上面的代码可以放在方法的任何位置,它出现的顺序对缓存没有影响, 所以你可以把它放到任何你认为合理的地方。一旦该代码被放在方法内, 你的页面就开始被缓存了。

    由于 CodeIgniter 存储缓存的方式,只有通过 view 输出的页面才能缓存。

    如果你修改了可能影响页面输出的配置,你需要手工删除掉 你的缓存文件。

    在写入缓存文件之前,你需要把 application/cache/ 目录的权限 设置为可写。

     

    删除缓存

    如果你不再需要缓存某个页面,你可以删除掉该页面上的缓存代码, 这样它在过期之后就不会刷新了。

    注:

    删除缓存代码之后并不是立即生效,必须等到缓存过期才会生效。

    如果你需要手工删除缓存,你可以使用 delete_cache() 方法:

    // Deletes cache for the currently requested URI
    $this->output->delete_cache();
    
    // Deletes cache for /foo/bar
    $this->output->delete_cache('/foo/bar');
  • 相关阅读:
    前端 CSS 基础
    前端 HTML基础
    前端 JavaScript基础
    GoldenGate 复制进程报错"OGG-01296 Error mapping",丢弃文件报错“Mapping problem with delete record (target format)”,且实际条目存在
    SaltStack 与 Python 程序的结合
    SUSE-11 本地 zypper 配置
    Centos-7 + Docker-1.12 中 devicemapper + direct_lvm 的 Docker 存储配置
    Docker-v17 的层级(layer)概念
    Oracle-11g 中使用表空间透明数据加密(TDE)
    SaltStack 的远程执行机制
  • 原文地址:https://www.cnblogs.com/hf8051/p/5163964.html
Copyright © 2011-2022 走看看