当前位置:  开发笔记 > 编程语言 > 正文

CodeIgniter输出缓存如何工作?

如何解决《CodeIgniter输出缓存如何工作?》经验,为你挑选了2个好方法。

我看了这个链接: -

http://codeigniter.com/user_guide/general/caching.html

它写道: -

When a page is loaded for the first time, the cache file will be written to your system/cache folder

并且我们可以通过缓存视图$this->output->cache(60);.但它是如何实际工作的?如果我的用户经常更新和删除记录,那么该视图会经常发生变化.它会显示修改过的数据吗?或者缓存会带回旧的陈旧数据吗?(在插入和更新之前)?如果它自动管理并从数据库中提取新数据,那么在cache功能中指定分钟的目的是什么?

提前致谢 :)



1> Matthew..:

codeigniter的缓存工作方式通常如下:

发出页面请求.Codeigniter(在很多框架被加载之前)执行当前url的哈希,如果它在缓存目录中找到该文件名,它就会提供.

获取新数据的唯一方法是手动删除文件.当codeigniter从它生成的哈希中找不到该文件时,它会动态创建该页面.

Codeigniter的实现被称为"整页"缓存,因此,它的有用性受到限制.我从Phil Sturgeon那里看到了一个部分缓存库:http://philsturgeon.co.uk/code/codeigniter-cache

老实说,对于大多数项目来说,整页缓存确实不是那么有用.事实上,我需要全页面缓存的项目我甚至不会把它留给codeigniter(我把它留给网络服务器:它的速度更快).

我猜你正在寻找的是一种部分缓存方法; 大多数人都喜欢这个.如果您使用单个服务器或Memcached(如果您有多个服务器),请查看APC.

祝好运.



2> Pete..:

但它是如何实际工作的?

如果存在比缓存时间更小的缓存版本,则将输出该缓存版本.

它会显示修改过的数据吗?

最终是的,但滞后$ cache_time

如果我的用户经常更新和删除记录,那么该视图会经常发生变化.

减少缓存时间或根本不使用缓存


在没有评论的情况下进行投票是很糟糕的行为
推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有