【问题标题】:Yii CRedisCache.php will use which redis datatype for cache storage?Yii CRedisCache.php 将使用哪种 redis 数据类型进行缓存存储?
【发布时间】:2014-06-26 21:40:32
【问题描述】:

我最近研究了 Redis,我决定在我的 PHP-Yii 应用程序中将它用作缓存存储.. 我确信的另一个决定是,我想以 HashMaps 的形式存储缓存的数据。 唯一的问题是我不知道,关于这段代码的内部存储..

Yii::app()->cache()->set($id,$value);

它是否会使用列表、集合、哈希图或其他方法?如果我能以某种方式配置它以使用特定的数据类型..用于性能测量..!

Yii主页上没有官方说明。

FYI : CRedisCache 是 Yii 为 Redis 上的缓存管理提供的类。

【问题讨论】:

    标签: php caching yii redis


    【解决方案1】:

    由于 CRedisCache.php 扩展了 Ccache.php ,因此您设置到 redis 的任何数据都将使用 serialized() 序列化并存储在 redis 中,同时取回数据从 redis 它 unserialize() 你的数据并返回给你。

    【讨论】:

      【解决方案2】:

      您可能会发现在CRedisCache sources - 这个类使用字符串键(即SETSETNX 命令)

      【讨论】:

      • 嗯,executeCommand() 函数可以让我灵活使用,然后通过 HSET 命令使用 HashMaps
      • 是的,但请记住 - HSET 不允许您在缓存键字段上使用 TTL 或过期。
      • Yii:app()->cache()->executecommand();只是行不通..还有其他语法吗??
      • 查看类源——这个方法有很好的文档块。
      • stackoverflow.com/questions/23632968/… 看到这个问题知道确切的问题..它可能不是关于类本身
      猜你喜欢
      • 2019-05-27
      • 2015-06-23
      • 2011-09-06
      • 1970-01-01
      • 2023-01-28
      • 1970-01-01
      • 2020-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多