install
/usr: 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows的program files目录。
make install 也一般装在/usr/local/bin目录下
redis.conf文件一般要先备份,然后拷贝到/etc/redis目录下~
先启动 redis.server
再启动 redis.cli
输入
PING
set key value
get key
benchmark
写 每秒钟 8W
读 每秒钟11W
redis简介
库
redis默认有16个库。
默认索引为0
FLUSHALL 清楚所有库
FLUSHDB 清楚当前库
端口是 6379
DBSIZE查看当前数据库key的数量
redis的五大数据类型
哪里去获取redis常用命令
http://redisdoc.com/
自己总结一些redis相关的命令:
string list hash(面试要用,笔试要考,工作要用)
- Binary-safe strings
- Lists
- Sets
- Sorted Sets
String
String是redis最基本的类型,你可以理解成Memcached一模一样的类型, 一个key对应一个value.
string类型是二进制安全的,意思是redis的String可以包含任何数据,比如Jpg图片或者序列化的对象。
string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M。
Hash(哈希)
Redis hash是一个键值对集合。
Redis hash是一个string
List (列表)
Redis的列表是链表
Set(集合)
Redis的Set是string类型的无序集合
Zset (有序集合)
sorted set: 集合
redis zset和set 一样也是string 类型元素的集合,且不允许重复的成员。不同的每个元素都会关联一个double类型的分数。
redis正式通过分数来集合中的成员进行从小到大的排序。
ZSet(sorted set:有序集合)
进程
单进程: 单进程模型处理客户端的请求。对读写等事件的相应,是通过对epoll函数的包装来做到的,redis的实际处理速度完全依靠主进程的执行效率。
redis常用命令
keys*
set key value
exists key
get key
del key
move key db 将key转移到其他db
expire key 给redis设置过期时间,单位是秒钟
ttl key:查看还有多少秒过期,-1表示永不过期,-2表示已过期
type key:查看key对应的value是什么类型
clear
string
apeend,
setrange
if it is a number:
INCR key
DECR key
incrby key num
decrby key num
list 链表
它是一个字符串链表,left, right都可以插入添加:
头尾插入,效率比较高。
不存在,创建新的链表。
如果值全移除,对应的键也就消失了。
lpush rpush lrange
LRANGE list01 0 -1
lpop rpop
lindex list01 index
llen
lrem key 删除N个value
ltrim key 开始Index 结束index, 截取指定范围后再赋值给key
linsert list01 before/after value1 value2
rpoplpush
set集合
实现原理
epoll