2017-04-15 11:13:33 2074次浏览 2条回答 1 悬赏 10 金钱

需求是frontend访问能直接读取在backend下设置的缓存
比如说我在backend下Yii::$app->cache->set('key','test'),
然后在frontend下Yii::$app->cache->get('key')读取
现在在相同模块下读取就没事,但是如何实现跨模块访问呢?谢谢!

补充于 2017-04-15 11:56

已找到解决方法:
一、配置文件:

'cacheBackend' => [
            'class' => 'yii\caching\FileCache',
            'cachePath' => Yii::getAlias('@backend') . '/runtime/cache'
        ],

二、调用

$cache = \Yii::$app->cacheBackend;

最佳答案

  • johnny1991 发布于 2017-04-15 11:43 举报

    第一:你要确保,backend下的cache,和frontend下的cache是访问同一个cache
    第二:你要确保当你夸模块读取的时候的,这个数据已经存在你的cache里面了
    第三,你这个叫做跨app

    2 条回复
    回复于 2017-04-15 11:56 回复

    已经解决了谢谢!

    回复于 2017-04-15 12:06 回复

    不客气,原来你用的是文件缓存,推荐使用dbCache,或是redis,或是memcached

您需要登录后才可以回答。登录 | 立即注册
Akun
总监

Akun 深圳市

注册时间:2017-04-14
最后登录:1天前
在线时长:35小时59分
  • 粉丝1
  • 金钱2240
  • 威望0
  • 积分2590

热门问题