一、背景
最近应产品需求,任务每日一取,顺序循环,那这种情况肯定是每天的第一次进入任务中心需要从数据库获取,其他时间从缓存中取就可以了,那这里就进入了今天的主题:缓存机制;而第一个想到的就是深入脑海的Redis
二、调研、使用
Redis 是一个开源的,高级键值对存储数据库。由于它包含 字符串 , 哈希 , 列表 , 集合 , 和 有序集合 这些数据类型,所以它通常被称为数据结构服务器。
在使用 Laravel 的 Redis 之前,你需要通过 Composer 安装 predis/predis 扩展包:
composer require predis/predis
配置
Laravel 应用的 Redis 配置都在配置文件 config/database.php 中。在这个文件里,你可以看到 redis 数组里包含了应用程序使用的 Redis 服务器信息,一般你不用修改这个配置文件,默认的应该够用,当然你也可以修改配置来适用于自己的缓存服务器,
Redis 交互
你可以通过调用 Redis facade 上的各种方法来与 Redis 交互。Redis facade 支持动态方法,意味着你可以在 facade 上调用各种 Redis 命令 ,命令将直接传递给 Redis。在示例中,将通过 Redis facade 上的 get 方法来调用 Redis 上的 GET 命令
$user = Redis::get('user:profile:'.$id);
如上所述,你可以在 Redis facade 上调用任意 Redis 命令。Laravel 使用魔术方法将命令传递给 Redis 服务器,因此只需传递 Redis 命令所需的参数即可
Redis::set('name', 'Taylor');
具体的使用你可以参考手册,其实手册上写的很清晰明了,但是因为咱是在自己本地跑这个(windows环境下),那你没有缓存服务,肯定需要一个哟,
三、本地实现奔跑
本地需要下载Redis-server,
1.下载
redis官方下载地址:https://redis.io/download,redis 64位下载地址:https://github.com/ServiceStack/redis-windows,本人测试使用的是redis-64.3.0.503版本。
2.解压。安装
下载解压之后,cmd打开命令行,进入到解压的文件夹下
这里你可以使用自动补全功能,如若电脑没有这个功能,请参考文章Windows 下配置使cmd命令行自动补全
3.启动服务
四、成功起飞
接下来,你根据文档进行存取数据就可以了
题外话
一切就绪后,发现这不能设置时间,或者说是不能再当天结束的时候清除这个缓存,我就琢磨了一下,我为啥要用Redis呀,我的数据又不大,辗转反侧,我想起来了被我遗忘的Cache,不过cache也是可以配置使用Redis的,不过我目前使用默认的file驱动就足够了,以后有时间再把file换成redis驱动