我在CActiveRecord
中使用缓存:
$myoboject = ListModel::model()->cache(60)->findAll();
根据文档,它将结果集缓存60秒。
我想问,如果另一个请求将在60秒内到来,它会打开一个新的DB连接吗?我认为它不应该这样做,相反,它应该获取缓存的数据。
我有这个问题,因为我想避免多个数据库连接被脚本打开,我想缓存数据60秒,之后它可以无效。
我讲对了吗?这是正常的行为吗?如果有什么问题,请告诉我好吗?
我用过Memcache和Sqlite
根据一些研究,论坛讨论和分析CDConnection和CActiveRecord代码,确认它必须打开一个新的连接。所以我们要么编写代码来避免这种情况,要么等待功能的出现。在此之前,我们可以通过将数据对象保存到缓存中来使用数据缓存