redis学习之初体验redis

目录

redis

介绍

redis是一个key-value存储系统。

它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。

这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。

在此基础上,redis支持各种不同方式的排序。

为了保证效率,数据都是缓存在内存中

安装redis

windows下安装

https://github.com/dmajkic/redis/downloads。

下载对应的压缩包后解压出来,注意路径中最好不要有中文,解压后如下图

通过命令行打开redis

1.进入redis 2.打开redis的服务端命令行 3.打开客户端命令行 4.设置和获取键值对,测试redis是否能正常运行 

Linux下安装

cd /opt wget https://github.com/antirez/redis/archive/5.0.7.tar.gz  tar -zxvf redis-5.0.7.tar.gz mv redis-5.0.7 /usr/local/redis cd /usr/local/redis make && make PREFIX=/usr/local/redis install 

redis远程连接

修改redis.conf文件

1.注释掉bind 127.0.0.1 2设置后台启动,将 daemonize no 改为 daemonize yes 3.protected-mode no #默认yes,开启保护模式,限制为本地访问 

php链接redis

下载redis扩展,官网地址(https://pecl.php.net/package/redis)

cd /opt wget https://pecl.php.net/get/redis-5.3.7.tgz tar -zxvf redis-5.3.7.tgz mv redis-5.3.7 /usr/local/php_extension/redis cd /usr/local/php_extension/redis phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install 

编译安装完成后,打开php.ini,添加上extension=redis,并重启php-fpm

redis的几种数据类型

string字符串

string是redis最基本的类型,一个key对应一个value。

string类型是二进制安全的。

意思是redis的string可以包含任何数据。

比如jpg图片或者序列化的对象。

string类型是Redis最基本的数据类型,一个键最大能存储512MB

php操作string类型

list(链表)

Redis列表是简单的字符串列表,按照插入顺序排序。

你可以添加一个元素导列表的头部或者尾部。

php操作list类型

hash(哈希类型)

Redis hash 是一个键值对集合。

Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。

hash相关操作命令

set(集合)

Redis的Set是string类型的无序集合。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)

set与list的区别

set相关操作命令

zset(sorted set --有序集合)

Redis zset和set一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。

redis正是通过分数来为集合中的成员进行从小到大的排序。

zset的成员是唯一的,但分数(score)却可以重复。

zset相关操作命令

redis其他操作

在php开发或生产中推荐关于redis扩展

composer require predis/predis

参考资料

六星教育