教科书式开头——————————————————————————————————————————————————————————————————————————————————————————Redis和其他key-value缓存产品有以下三个特点:Redis支持数据持久化,可以将内存中的数据保存在磁盘上,重启时可以再次加载使用。Redis不仅支持简单的key-value类型数据,还提供list、set、zset、hash等数据结构的存储。Redis支持数据备份,即主从模式的数据备份。Redis优势高性能——Redis的读速度可达11万次/s,写速度可达81000次/s。丰富的数据类型——Redis在二进制情况下支持字符串、列表、哈希、集合和有序集合数据类型。原子性——Redis的所有操作都是原子的,Redis也支持所有操作合并后原子执行。丰富的特性——Redis还支持发布/订阅、通知、密钥过期等特性。如何安装redis1.Ubuntu(因为我使用的Homestead环境虚拟机是Ubuntu,所以我只用这个方法安装,Windows请到http://www.redis.net.cn/tutor...)官方指导Ubuntu安装方法$sudoapt-getupdate$sudoapt-getinstallredis-server由于我的网站使用的是laravel框架,需要使用composer方式安装composerrequirepredis/predis如果安装lumenmicro-framework,你还需要安装illuminate/redis(5.2.*)composerrequireilluminate/redis(5.2.*)configuration如果安装了lumen//需要在bootstrap/app.php中添加这段代码$app->register(Illuminate\Redis\RedisServiceProvider::class);$app->configure('数据库');Redis可以作为主数据库,所以Laravel中Redis的配置信息位于config/database.php:'redis'=>['cluster'=>false,'default'=>['host'=>'127.0.0.1','port'=>6379,'database'=>0,]],其中cluster选项表示是否在多个Redis节点间分片,这里我们本地测试只有一个节点所以设置为错误的。default选项表示默认的Redis主机连接,Redis和web服务器共用一个主机,所以主机是127.0.0.1,Redis的默认端口是6379。另外,默认选项还支持更多的连接参数(如果需要的话):参数||含义||默认值host|服务器IP地址/主机名|127.0.0.1port|Redis服务器监听的端口号|6379password|如果服务器需要验证密码|不要使用密码数据库|连接时选择的数据库索引|没有索引超时|连接Redis服务器超时时间|5秒read_write_timeout|通过网络连接进行读写操作的超时时间|系统默认(如果没有超时限制设置为-1)另外,如果使用Redis作为缓存工具,还需要在config/cache.php中配置redis选项:'redis'=>['driver'=>'redis','connection'=>'default',],这里的connection对应config/database中redis的默认主机配置。完成以上配置后,我们就可以在应用代码中使用Redis进行数据访问了。我们来看一个例子——laravel的mysql和Redis的搭配。我的想法是读取时先在缓存中查找。如果你找到它,那将是吉祥的。中间。if(Cache::has($key)){//找到则先查找缓存$values=Cache::get($>key);//直接读取缓存return$values;}else{//如果缓存中没有$values=DB::select($sql);缓存::put($key,$value,$time);返回值;但是laravel的缓存也提供了remember函数$values=Cache::remember($key,$time,function(){returnDB::select($this->sql);});如果缓存有直接读取并返回,如果缓存项在缓存中不存在,则返回remember方法的闭包会被执行,闭包的执行结果会存储在缓存中。
