存儲結構redis
./redis-server ../redis.conf數據庫
./redis-cli shutdown緩存
若是有lua腳本執行了死循環,須要用 ./redis-cli shutdown nosave 才能關閉安全
之後臺進程的方式啓動,修改redis.conf daemonize =yes服務器
鏈接到redis的命令數據結構
./redis-cli -h 127.0.0.1 -p 6379app
容許遠程鏈接的設置 分佈式
將 bind 127.0.0.1 使用#註釋掉,改成# bind 127.0.0.1(bind配置的是容許鏈接的ip,默認只容許本機鏈接;若遠程鏈接需註釋掉,或改成0.0.0.0) 將 protected-mode yes 改成 protected-mode no(3.2以後加入的新特性,目的是禁止公網訪問redis cache,加強redis的安全性)
Redis-server 啓動服務工具
Redis-cli 訪問到redis的控制檯性能
redis-benchmark 性能測試的工具
redis-check-aof aof文件進行檢測的工具
redis-check-dump rdb文件檢查工具
redis-sentinel sentinel 服務器配置
默認支持16個數據庫;能夠理解爲一個命名空間
跟關係型數據庫不同的點
經過 select dbid 去選擇不一樣的數據庫命名空間 。 dbid的取值範圍默認是0 -15
keys pattern [? / * /[]]
keys mic:hobby
一個字符類型的key默認存儲的最大容量是512M
賦值和取值
SET key value
GET key
遞增數字
incr key
錯誤的演示
int value= get key;
value =value +1;
set key value;
key的設計
對象類型:對象id:對象屬性:對象子屬性
建議對key進行分類,同步在wiki統一管理
短信重發機制:sms:limit:mobile 138。。。。。 expire
incryby key increment 遞增指定的整數
decr key 原子遞減
append key value 向指定的key追加字符串
strlen key 得到key對應的value的長度
mget key key.. 同時得到多個key的value
mset key value key value key value …
setnx
list, 能夠存儲一個有序的字符串列表
LPUSH/RPUSH: 從左邊或者右邊push數據
LPUSH/RPUSH key value value …
{17 20 19 18 16}
llen num 得到列表的長度
lrange key start stop ; 索引能夠是負數, -1表示最右邊的第一個元素
lrem key count value 刪除指定索引的值
lset key index value 設置指定索引的值
LPOP/RPOP : 取數據,取後數據即被從列表刪除
應用場景:能夠用來作分佈式消息隊列
hash key value 不支持數據類型的嵌套
比較適合存儲對象
person
age 18
sex 男
name mic
..
hset key field value
hget key filed
hmset key filed value [filed value …] 一次性設置多個值
hmget key field field … 一次性得到多個值
hgetall key 得到hash的全部信息,包括key和value
hexists key field 判斷字段是否存在。 存在返回1. 不存在返回0
hincryby
hsetnx
hdel key field [field …] 刪除一個或者多個字段
set 跟list 不同的點。 集合類型不能存在重複的數據。並且是無序的
sadd key member [member ...] 增長數據; 若是value已經存在,則會忽略存在的值,而且返回成功加入的元素的數量
srem key member 刪除元素
smembers key 得到全部數據
sdiff key key … 對多個集合執行差集運算
sunion 對多個集合執行並集操做, 同時存在在兩個集合裏的全部值
zadd key score member
zrange key start stop [withscores] 去得到元素。 withscores是能夠得到元素的分數
若是兩個元素的score是相同的話,那麼根據(0<9<A<Z<a<z) 方式從小到大
網站訪問的前10名。
MULTI 去開啓事務
set userinfo:name victor 返回QUEUED
set userinfo:age 18 返回 QUEUED
EXEC 去執行事務
exec 提交執行事務
在執行中才報錯的語句,事務不會回滾。
expire key seconds
ttl 得到key的過時時間
publish channel message
subscribe channel [ …]
分片策略:codis . twmproxy
數據庫能夠作 activemq
緩存 -redis setnx
zookeeper