Yii:使用CActiveRecord Cache时的新数据库连接

时间:2012-12-21 11:45:09

标签: php caching model yii

我在CActiveRecord中使用缓存作为:

$myoboject = ListModel::model()->cache(60)->findAll();

根据文档,它将结果集缓存60秒。

我想问一下,如果另一个请求将在60秒内到达,它会打开一个新的数据库连接吗?我认为不应该这样做,而是应该获取缓存的数据。

我遇到了这个问题,因为我想避免脚本打开多个数据库连接,我希望将数据缓存60秒,之后可能会失效。

我是否在正确的轨道上?这是正常的行为吗?如果出现问题,有人可以告诉我吗?

我已经使用了Memcache和Sqlite。

1 个答案:

答案 0 :(得分:1)

根据一些研究forum discussions并分析CDConnection和CActiveRecord代码,确认它必须打开一个新连接。所以我们要么编写代码来避免这种情况,要么等待功能。直到我们可以通过将数据对象保存到缓存中来使用数据缓存。