目录
- 什么是redis
- Redis的特点
- Redis常识
- Redis常见命令
1.什么是redis
- Redis:Remote Dictionary Server(远程字典服务器)
- 用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,称为数据结构服务器。
2.redis的特点
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
3.redis 的常见知识
- 单进程:单进程模型来处理客户端的请求。对读写等事件的响应
是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率。 - 默认16个数据库,类似数组下表从零开始,初始默认使用零号库,select命令切换数据库
4.redis 满足分布式的CP理论
- C:Consistency(强一致性)
- A:Availability(可用性)
- P:Partition tolerance(分区容错性)
CAP理论就是说在分布式存储系统中,最多只能实现上面的两点。
而由于当前的网络硬件肯定会出现延迟丢包等问题,所以分区容忍性是我们必须需要实现的,我们只能在一致性和可用性之间进行权衡,没有NoSQL系统能同时保证这三点。
redis的常用命令
1.参考redis的命令大全
2.redis的键
- keys *:查看当前库下的所有key值
- exists key,判断某个key是否存在
- move key db ;当前库就没有了,被移到指定的库中。
- expire key 秒钟:为给定的key设置过期时间
- ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期
- type key 查看你的key是什么类型
3.Redis的字符串
4.Redis的列表List
5.Redis的集合
6.Redis的有序集合
7.Redis的hash
- HSET :HSET student name “小虾”
- HSETNX :如果不存在的时候设置值
- HGET :
- HEXISTS :判断是否存在hash表中
- HDEL
- HLEN :hash表中key的数量;hlen student
- HSTRLEN :相关联的值的字符串长度;HSTRLEN student name
- HINCRBY
- HINCRBYFLOAT
- HMSET
- HMGET
- HKEYS :查看key下所有的值;
- HVALS :返回哈希表 key 中所有域的值。
- HGETALL
- HSCAN