使用场景
1,做缓存,不经常变动的数据加载到缓存中。定时的去更新缓存。
2,热点数据处理,如计数,在线会员列表,最新文章等。
redis持久化
rob方式:通过快照完成,当符合一定条件时redis会自动将内存中的所有数据进行快照并存储到硬盘上。
进行快照的条件有两个:时间与改动的键的个数。 redis默认采用rob方式,文件在当前目录的dump.rdb文件
在redis启动时会读取rdb快照文件。
aof方式:每执行一条会更改redis中数据的命令,就将该命令写入硬盘的aof文件
redis入门指南笔记
一、安装 wget http://download.redis.io/redis-stable.tar.gz tar xzf redis-stable.tar.gz cd redis-stable make 启动 src/redis-server 停止 redis-cli shutdown 客户端: src/redis-cli cp redis-benchmark redis-cli redis-server /usr/bin/ #这个倒是很有用,这样就不用再执行时加上./了,而且可以在任何地方执行 在线测试 http://try.redis.io/ 二、各种类型 键命名:对象类型:对象ID:对象属性 设置 set myname asong 获取 get myname 判断存在 exists myname 删除 del myname mset,mget设置获取多个键 mset myname asong age 28 查询所有键:keys * 查询以w开头的键 keys w* type key 获取类型 是原子的,避免冲突 整数自增 incr i decr i incrby i 10 decrby i 10 加小数 incrbyfloat i 1.5 向尾部添加值,若不存在,则新值 append myname hello 获取长度 strlen myname 类型: 字符串类型,整数类型 散列类型:用来存储对象 hset user name asong hget user name 设置多个值 hmset user name asong age 28 hgetall user --显示所有 hexists user name 判断字段是否存在 hincry user age hdel user age hkeys user hlen user --获取字段数量 列表类型:存储一个有序的字符串列表,在列表两端添加元素,或者获得列表的某一个片段,一双向链表,顺序即插入的次序。 若是一个对象,可以序列化成字符串存储 应用:网站上的最新文章top 10 直接从列表类型中取出即可,因为每次都将最新的插入到头部 lpush users asong fang bcc rpush users dd ff 从列表删除元素 lpop users rpop users 获取片段 lrange users 1 10 删除列表指定的值 lrem users -1 asong lrem key count value count>0 从列表左边开始删除前count个值为value的元素。 <0,从右边 =0 删除所有值为value的元素 获取指定位置的值 lindex users 1 向列表指定位置插入元素 linsert users before 7 niuniu 集合类型: 集合:无序的每个元素唯一的合集 sadd users asong fangfang 获取: smembers users 删除:sren users asong 判断集合是否存在 sismember users asong 集合运算 sdiff:多个集合差集 属于A但不属于B的集合 sinter:交集 sunion:并集 有序集合类型:插入数据时指定权重,自动处理排序 zadd users asong 100 fang 200 niu 1000 获得元素的权重 zscore users asong 获取权重在某个范围的元素列表 zrange users 1 10