Redis介绍2. Redis是什么? Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. Redis author : antirez , from Italy http://antirez.com/ 8. 结构化数据存取需求 redis> hsetdanchenguanzhu 195 (integer) 1 redis> hsetdanchen fans 3769 (integer) 1 redis> hsetdanchenmicroblogs 418 (integer) 1 redis> redis> redis> hgetalldanchen 1) "guanzhu" 2) "195" 3) "fans" 4) "3769" 5) "microblogs" 6) "418" 两个控制参数: hash-max-zipmap-entries 1024 hash-max-zipmap-value 100 13. 集合sets操作 redis> srem students hi (integer) 1 redis> srem students hi (integer) 0 redis> spop students "danchen" redis> spop students "wwww" redis> scard students (integer) 4 redis> sort students 1) "hello" 2) "supu" 3) "wwww.taobao.com" 4) "baby" redis> sadd students danchen (integer) 1 redis> sadd students baby (integer) 1 redis> sadd students hello (integer) 1 redis> sadd students hi (integer) 1 redis> sadd students wwww (integer) 1 redis> sadd students wwww.taobao.com (integer) 1 redis> sadd students supu (integer) 1 redis> sadd students supu (integer) 0 19. 数据结构管理成本 每个redisObject会有16 bytes的管理开销 typedefstructredisObject { unsigned type:4; unsigned storage:2; /* REDIS_VM_MEMORY or REDIS_VM_SWAPPING */ unsigned encoding:4; unsigned lru:22; /* lru time (relative to server.lruclock) */ intrefcount; void *ptr; /* 数据真正存放的地方*/ } robj; 21. Rdb持久化 Fork一个进程,利用copy on write原理,遍历所有db的hash table,进行整库的dump Save命令,shutdown命令,slave启动都会触发 利用LZF进行压缩 持久化触发条件: #save 900 1 #save 300 10 #save 60 10000