最近在了解Nosql的具体实现,redis作为KV数据库的重要成员,怎么能遗忘他呢。本篇文章对其特性做一些介绍,以后有时间对其底层做详细分析。
Redis简介
Redis是一个存储key-value对的内存型数据库,也就是说对其的基本增删改查等操作都是对内存中的数据进行(当然其也有持久化策略),由于这个原因,其读写性能相对于mysql等关系型数据库有很大的提升。其特点如下:
Key-Value型数据库。Redis首先是一个K-V型Nosql数据库,将数据都是以键值对的形式存储在数据库中。Redis将数据首先存储在内存中,根据持久化策略(AOF、RDB)将内存数据持久化到磁盘上,重启数据库server的时候再把磁盘上的文件加载到内存中。Redis有五种类型的对象:字符串对象,列表对象,哈希对象,集合对象,有序集合对象。丰富的对象可以提供存储数据格式时的更多选择。Redis有丰富的特性,如:master-slave架构,原子性命令,发布订阅功能,Lua脚本操作等。
Redis配置文件
bind
127.0.0.1
protected
-mode yes
port
6379
tcp
-backlog
511
timeout
0
tcp
-keepalive
0
daemonize no
supervised no
pidfile
/var
/run
/redis
.pid
loglevel notice
logfile
""
databases
16
save
900 1
save
300 10
save
60 10000
stop
-writes
-on
-bgsave
-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump
.rdb
dir
./
slave
-serve
-stale
-data yes
slave
-read
-only yes
repl
-diskless
-sync no
repl
-diskless
-sync
-delay
5
repl
-disable
-tcp
-nodelay no
slave
-priority
100
appendonly no
appendfilename
"appendonly.aof"
appendfsync everysec
no
-appendfsync
-on
-rewrite no
auto-aof
-rewrite
-percentage
100
auto-aof
-rewrite
-min
-size
64mb
aof
-load
-truncated yes
slowlog
-log
-slower
-than
10000
slowlog
-max
-len
128
latency
-monitor
-threshold
0
notify
-keyspace
-events
""
hash
-max
-ziplist
-entries
512
hash
-max
-ziplist
-value
64
list
-max
-ziplist
-size
-2
list
-compress
-depth
0
set
-max
-intset
-entries
512
zset
-max
-ziplist
-entries
128
zset
-max
-ziplist
-value
64
,,,
参考:
redis命令文档redis简介redis配置