nickyhu 发表于 2009-3-16 19:52:57

楼主真有才:)

snllll 发表于 2009-3-16 21:08:17

我一直都没有阅读过官方的源码……只是拿来用了而已。
这个问题真的比较严重

sulong 发表于 2009-3-17 19:28:52

不能给缓存设个大小上限吗?如果到达上限,就把最老最不常用的缓存清空。

BillyFan 发表于 2009-3-17 19:45:31

这个问题貌似蛮严重的诶~~~~~~
有没有人去CI官网报告啊?

korui 发表于 2009-3-17 19:57:06

对,得去官网报告。

destiny_my 发表于 2009-3-17 22:26:00

为什么CI不使用SMARTY 这个模板引擎呢?

Hex 发表于 2009-3-17 23:28:25

为什么CI不使用SMARTY 这个模板引擎呢?
destiny_my 发表于 2009-3-17 22:26 http://codeigniter.org.cn/forums/images/common/back.gif
为什么要用 smarty?我觉得 smarty 很臃肿。
PHP 作为模板语言难道不比 smarty 好?都有自己的语法,都有控制结构,为什么要学新的语法呢?呵呵

destiny_my 发表于 2009-3-17 23:57:22

恩,也有道理。都是CI的缓存机制真的不敢恭维。我曾向公司提出用CI框架开发,可老总问我,能否解决缓存问题时,我无语了。虽然CI可以定制自己的缓存方式,但是还是美中不足,比如:一个视图文件 index.php 如果作为首页文件,那么其缓存的cache_id = index 。 如果是搜索列表文件,那么其缓存的cache_id = index . params 。。。。如何让每个控制器在调用之前设置其cache_id呢?

destiny_my 发表于 2009-3-18 00:01:30

CI本身也有个Parser模板解析对象。这个对象是不可以缓存的。很费解,为什么CI会有个这样的东西?作用是什么?我从ECSHOP里拷贝了他的template类来替代了Parser。增强了很多功能,但是缓存机制还是有难题。因为他不是在 pre_system的时候读取缓存的。而是在post_controller时读取的,这样的话cache就没什么必要了。真的很郁闷。郁闷到极点了。

destiny_my 发表于 2009-3-18 00:14:07


为什么要用 smarty?我觉得 smarty 很臃肿。
PHP 作为模板语言难道不比 smarty 好?都有自己的语法,都有控制结构,为什么要学新的语法呢?呵呵
Hex 发表于 2009-3-17 23:28 http://codeigniter.org.cn/forums/images/common/back.gif

如果是SMARTY源包的确很臃肿,都是ECSHOP5.0版本后都做了自己的模板解析类cls.template,他也是很轻量级的。
模板类为什么那么好用,有什么用呢?我觉得最主要的一点是模板库的作用:

模板可以include库文件lbi,这样可以使得模板结构更加容易分离和组合。

CI目前如何做到这点?
页: 1 [2] 3 4 5 6 7 8 9 10 11
查看完整版本: 脆弱的CI缓存系统,1天攻陷你的CI网站