NoSQL之Redis探析
下載地址:wget
安裝steps:
1 下載
Official Website :
文件地址 address: documentation
主從複製文件地址 :
2 解壓縮安裝
tar -xvf redis-2.8.8.tar.gz
cd redis-2.8.8
make
PS: make install 也可以make install,這樣就是把可執行檔案複製到/usr/local/bin裡而已。
..........
Hint: To run 'make test' is a good idea ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
make[1]: Leaving directory `/root/redis-2.8.8/src'
3 make test驗證
run the command to check the redis status:
[root@localhost redis-2.8.8]# make test
cd src && make test
make[1]: Entering directory `/root/redis-2.8.8/src'
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] 錯誤 1
make[1]: Leaving directory `/root/redis-2.8.8/src'
make: *** [test] 錯誤 2
[root@localhost redis-2.8.8]# cd src
[root@localhost src]# make test
You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] 錯誤 1
提示需要安裝tcl 8.5
然後到Tcl的官方網站下載8.5版本
找到 下載下來。
如果手動下載失敗,那麼可以考慮yum安裝,比如yum install tcl -y;
official website download failure, go to to download the tar gz.
如果官方網站下載失敗,就去csdn上面搜尋tcl8.5.12-src.tar.gz 下載。
#tar xvzf tcl8.5.12-src.tar.gz
#cd tcl8.5.13/unix/
#./configure
#make
#make test
#make install
4 redis引數研究以及啟動關閉
redis 配置檔案 /opt/redis-2.8.8/redis.conf,所有的引數都在這個配置檔案裡面配置,redis啟動的時候,會載入這個配置檔案。
4.1
新增master主庫資料儲存目錄:
mkdir -p /data/redis/master
4.2
save引數解讀:
save 900 1
save 300 10
save 60 10000
在900秒(15分鐘)內,至少有1次資料變更;
或者300秒內,有至少10次資料變更;
或者60秒內,有至少1000次資料變更;時間+資料變更次數,共同影響記憶體快照的出現。
4.3 appendonly no
4.4 port 6389
redis啟動的埠號碼,對外服務,外部程式透過此埠號碼與redis建立連線,對redis進行資料變更和資料訪問。
4.5 redis啟動
執行redis:
2.2.7版本,redis-server被放到了src資料夾下,要這麼執行:
在安裝目錄下# cd src
#./redis-server ./../redis.conf
或者全路徑啟動: /root/redis-2.8.8/src/redis-server /opt/redis-2.8.8/redis.conf
或者nohup後臺啟動: nohup /root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.conf &
附註:
2.0.4以前的老版本,執行很簡單,在安裝目錄下:
#./redis-server
就可以了。如果沒有更改daemonize no配置,會看見執行的資訊。
4.6 測試啟動
redis-cli ping 返回PONG,啟動成功。
檢視埠是否被佔用:netstat –ntlp |grep 6379
4.7 redis服務關閉
redis-cli shutdown
5 主從機制以及原理理解
redis主從使用以及配置起來非常簡單,搭建一套master-slave服務意味著slave redis服務是主庫的一份精確的資料備份:
redis主從基本特徵如下描述:
5.1 redis採用非同步複製,從redis2.8版本開始,slaves開始定期從複製流上確認資料處理的數量。
5.2 一個master可以對應多個slaves。
5.3 slave還可以接受其他slave發過來的請求,除了多個slave能連線一個master之外,slaves還可以被其他slaves以graph-like結構方式進行連線。
5.4 redis複製在master上面是不阻塞的,這意味著當一個或者多個slave複製開始初始化以及執行後,master還可以繼續處理請求。
5.5 複製在從庫上也是無阻塞的,當slave進行首次初始化同步時,slave可以使用舊的資料集合來處理請求,如果你在redis.conf裡面配置了的話。 ?哪裡配置?另外,如果複製流down了,你也可以配置一些redis slave返回一個error給客戶端。然而,在同步初始化完成後,舊的資料被刪除,新的資料會被載入進去,在這短暫的載入瞬間,slave會阻塞住進來的連線請求。
5.6 slave可以用來擴充套件,有多個slaves處理查詢請求(例如,大的SORT操作可以在slave上執行),或者也簡單的用來資料備份。
5.7 可以用replication來避免在master庫上資料寫入磁碟,減輕master壓力,僅僅在master的redis.conf裡面把所有save引數註釋掉即可。然後可以在從庫上slave上面開啟save引數來做到資料實時寫入到磁碟上面。
5.8 slave工作原理
(1) 如果建立了一個slave從庫,slave會發一個SYNC的命令的connection到master庫,不管這是否是第一次連線。
(2) master然後開始啟動一個saving的背景執行緒,並快取已經接收到的修改資料集的新的命令,當saving背景執行緒結束後,master會把資料檔案傳送給slave,並且save到磁碟,最後載入到記憶體。master將會傳送所有的快取命令給slave。
這些是以基於Redis協議的一系列連續的命令流來完成的。
(3) 當master-slave由於一些原因down之後,slave會自動連線master。
(4) 當連線斷開之後,master和slave會重新連線,一次全同步會執行,然而,從redis2.8開始,一個區域性的再同步也是可行的。
5.9 區域性再同步
主要是在master這一邊的複製流上面做了一個in-memory backlog,master和slave都會基於一個共同的replication offset和a master run id,因此當連線斷開之後,slave將會重新連線並且諮詢master去繼續複製,
假如master run id是同一個,並且offset在複製backlog裡面是可用的,複製將會從這個留下的偏移來恢復。如果這些條件不滿足,那麼一個全新的再同步會被執行。
當舊的實現機制用了SYNC之後,新的區域性再同步用了一個內部命令PSYNC。
【Note】當Redis2.8察覺出來服務如果不支援PSYNC,就會使用SYNC命令。
6 搭建從庫,從庫配置檔案
cp /root/redis-2.8.8/redis.conf /root/redis-2.8.8/redis.slave.conf
slave config:
port 6399 # 從庫埠號
slaveof 127.0.0.1 6389 #主庫ip地址以及埠號
#save引數,從庫開啟save,減輕主庫的讀寫壓力。
save 900 1
save 300 10
save 60 10000
7 啟動start the master and slave
#修改一下redis-conf裡面的
daemonize no,把no改為yes,可以後臺啟動。
/root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.conf
/root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.slave.conf
在後臺啟動
nohup /root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.conf &
nohup /root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.slave.conf > /root/redis_slave.log &
8 check master & slave
訪問主庫
/root/redis-2.8.8/src/redis-cli -p 6389
登入從庫
/root/redis-2.8.8/src/redis-cli -p 6399
驗證主從資料一致性:
[root@localhost redis]# /root/redis-2.8.8/src/redis-cli -p6389
Unrecognized option or bad number of args for: '-p6389'
[root@localhost redis]# /root/redis-2.8.8/src/redis-cli -p 6389
127.0.0.1:6389>
127.0.0.1:6389>
127.0.0.1:6389> set name jame #往主庫中設定2組key-value值
OK
127.0.0.1:6389> set age 20
OK
127.0.0.1:6389> exit
[root@localhost redis]# /root/redis-2.8.8/src/redis-cli -p 6399
127.0.0.1:6399> get name #獲取主庫設定的key-value值,看是否已經從主庫傳遞到從庫了。
"jame"
127.0.0.1:6399> get age
"20"
127.0.0.1:6399>
8 驗證過程
如何判斷哪個是主哪個是從呢? 只需呼叫 info 這個命令就可以得到主從的資訊了,我們在從庫上執行 info 命令,如下所示:
127.0.0.1:6399> info
# Server
redis_version:2.8.8
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:a90848107b5eaf7f
redis_mode:standalone
os:Linux 2.6.32-358.el6.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.7
process_id:19513
run_id:c97e05680da496d58894963fb38045b9fba1b13d
tcp_port:6399
uptime_in_seconds:2672
uptime_in_days:0
hz:10
lru_clock:4722614
config_file:/root/redis-2.8.8/redis.slave.conf
# Clients
connected_clients:2
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
# Memory
used_memory:829360
used_memory_human:809.92K
used_memory_rss:7933952
used_memory_peak:829360
used_memory_peak_human:809.92K
used_memory_lua:33792
mem_fragmentation_ratio:9.57
mem_allocator:jemalloc-3.2.0
# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1397230798
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
# Stats
total_connections_received:1
total_commands_processed:271
instantaneous_ops_per_sec:0
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:2
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:3483
# Replication
role:slave
master_host:127.0.0.1
master_port:6389
master_link_status:up
master_last_io_seconds_ago:9
master_sync_in_progress:0
slave_repl_offset:3867
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
# CPU
used_cpu_sys:0.66
used_cpu_user:0.15
used_cpu_sys_children:0.01
used_cpu_user_children:0.00
# Keyspace
db0:keys=2,expires=0,avg_ttl=0
9 附帶redis短連線
redis r = redis.connect(xx)
r.set()
r.get()
r.close()
redis長連線,那就是如果不用的話,執行緒就是sleep,如果用的話,那麼就是query等的狀態。
10 redis的一些引數最佳化
vm-enabled設定為no
maxmemory :告訴Redis當使用了多少實體記憶體後就開始拒絕後續的寫入請求,該引數能很好的保護好你的Redis不會因為使用了過多的實體記憶體而導致swap,最終嚴重影響效能甚至崩潰。有個說法是一般不超過實體記憶體的3/5
Redis Hash 儲存:
hash-max-zipmap-entries 64
hash-max-zipmap-value 512
hash-max-zipmap-entries
同樣類似的引數有
list-max-ziplist-entries 512
說明:list資料型別多少節點以下會採用去指標的緊湊儲存格式。
list-max-ziplist-value 64
說明:list資料型別節點值大小小於多少位元組會採用緊湊儲存格式。
set-max-intset-entries 512
說明:set資料型別內部資料如果全部是數值型,且包含多少節點以下會採用緊湊格式儲存。
另外redis 的6種過期策略
redis 中的預設的過期策略是volatile-lru 。設定方式
config set maxmemory-policy volatile-lru
maxmemory-policy 六種方式
volatile-lru:只對設定了過期時間的key進行LRU(預設值)
allkeys-lru : 是從所有key裡 刪除 不經常使用的key
volatile-random:隨機刪除即將過期key
allkeys-random:隨機刪除
volatile-ttl : 刪除即將過期的
noeviction : 永不過期,返回錯誤
maxmemory-samples 3 是說每次進行淘汰的時候 會隨機抽取3個key 從裡面淘汰最不經常使用的(預設選項)
save 引數解讀:
save 900 1
save 300 10
save 60 10000
在900秒(15分鐘)內,至少有1次資料變更;
或者300秒內,有至少10次資料變更;
或者60秒內,有至少1000次資料變更;時間+資料變更次數,共同影響記憶體快照的出現。
PS:在主庫上註釋掉save功能,在從庫開啟save功能,會減少主庫的讀寫壓力。
安裝steps:
1 下載
Official Website :
文件地址 address: documentation
主從複製文件地址 :
2 解壓縮安裝
tar -xvf redis-2.8.8.tar.gz
cd redis-2.8.8
make
PS: make install 也可以make install,這樣就是把可執行檔案複製到/usr/local/bin裡而已。
..........
Hint: To run 'make test' is a good idea ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
make[1]: Leaving directory `/root/redis-2.8.8/src'
3 make test驗證
run the command to check the redis status:
[root@localhost redis-2.8.8]# make test
cd src && make test
make[1]: Entering directory `/root/redis-2.8.8/src'
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] 錯誤 1
make[1]: Leaving directory `/root/redis-2.8.8/src'
make: *** [test] 錯誤 2
[root@localhost redis-2.8.8]# cd src
[root@localhost src]# make test
You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] 錯誤 1
提示需要安裝tcl 8.5
然後到Tcl的官方網站下載8.5版本
找到 下載下來。
如果手動下載失敗,那麼可以考慮yum安裝,比如yum install tcl -y;
official website download failure, go to to download the tar gz.
如果官方網站下載失敗,就去csdn上面搜尋tcl8.5.12-src.tar.gz 下載。
#tar xvzf tcl8.5.12-src.tar.gz
#cd tcl8.5.13/unix/
#./configure
#make
#make test
#make install
4 redis引數研究以及啟動關閉
redis 配置檔案 /opt/redis-2.8.8/redis.conf,所有的引數都在這個配置檔案裡面配置,redis啟動的時候,會載入這個配置檔案。
4.1
新增master主庫資料儲存目錄:
mkdir -p /data/redis/master
4.2
save引數解讀:
save 900 1
save 300 10
save 60 10000
在900秒(15分鐘)內,至少有1次資料變更;
或者300秒內,有至少10次資料變更;
或者60秒內,有至少1000次資料變更;時間+資料變更次數,共同影響記憶體快照的出現。
4.3 appendonly no
4.4 port 6389
redis啟動的埠號碼,對外服務,外部程式透過此埠號碼與redis建立連線,對redis進行資料變更和資料訪問。
4.5 redis啟動
執行redis:
2.2.7版本,redis-server被放到了src資料夾下,要這麼執行:
在安裝目錄下# cd src
#./redis-server ./../redis.conf
或者全路徑啟動: /root/redis-2.8.8/src/redis-server /opt/redis-2.8.8/redis.conf
或者nohup後臺啟動: nohup /root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.conf &
附註:
2.0.4以前的老版本,執行很簡單,在安裝目錄下:
#./redis-server
就可以了。如果沒有更改daemonize no配置,會看見執行的資訊。
4.6 測試啟動
redis-cli ping 返回PONG,啟動成功。
檢視埠是否被佔用:netstat –ntlp |grep 6379
4.7 redis服務關閉
redis-cli shutdown
5 主從機制以及原理理解
redis主從使用以及配置起來非常簡單,搭建一套master-slave服務意味著slave redis服務是主庫的一份精確的資料備份:
redis主從基本特徵如下描述:
5.1 redis採用非同步複製,從redis2.8版本開始,slaves開始定期從複製流上確認資料處理的數量。
5.2 一個master可以對應多個slaves。
5.3 slave還可以接受其他slave發過來的請求,除了多個slave能連線一個master之外,slaves還可以被其他slaves以graph-like結構方式進行連線。
5.4 redis複製在master上面是不阻塞的,這意味著當一個或者多個slave複製開始初始化以及執行後,master還可以繼續處理請求。
5.5 複製在從庫上也是無阻塞的,當slave進行首次初始化同步時,slave可以使用舊的資料集合來處理請求,如果你在redis.conf裡面配置了的話。 ?哪裡配置?另外,如果複製流down了,你也可以配置一些redis slave返回一個error給客戶端。然而,在同步初始化完成後,舊的資料被刪除,新的資料會被載入進去,在這短暫的載入瞬間,slave會阻塞住進來的連線請求。
5.6 slave可以用來擴充套件,有多個slaves處理查詢請求(例如,大的SORT操作可以在slave上執行),或者也簡單的用來資料備份。
5.7 可以用replication來避免在master庫上資料寫入磁碟,減輕master壓力,僅僅在master的redis.conf裡面把所有save引數註釋掉即可。然後可以在從庫上slave上面開啟save引數來做到資料實時寫入到磁碟上面。
5.8 slave工作原理
(1) 如果建立了一個slave從庫,slave會發一個SYNC的命令的connection到master庫,不管這是否是第一次連線。
(2) master然後開始啟動一個saving的背景執行緒,並快取已經接收到的修改資料集的新的命令,當saving背景執行緒結束後,master會把資料檔案傳送給slave,並且save到磁碟,最後載入到記憶體。master將會傳送所有的快取命令給slave。
這些是以基於Redis協議的一系列連續的命令流來完成的。
(3) 當master-slave由於一些原因down之後,slave會自動連線master。
(4) 當連線斷開之後,master和slave會重新連線,一次全同步會執行,然而,從redis2.8開始,一個區域性的再同步也是可行的。
5.9 區域性再同步
主要是在master這一邊的複製流上面做了一個in-memory backlog,master和slave都會基於一個共同的replication offset和a master run id,因此當連線斷開之後,slave將會重新連線並且諮詢master去繼續複製,
假如master run id是同一個,並且offset在複製backlog裡面是可用的,複製將會從這個留下的偏移來恢復。如果這些條件不滿足,那麼一個全新的再同步會被執行。
當舊的實現機制用了SYNC之後,新的區域性再同步用了一個內部命令PSYNC。
【Note】當Redis2.8察覺出來服務如果不支援PSYNC,就會使用SYNC命令。
6 搭建從庫,從庫配置檔案
cp /root/redis-2.8.8/redis.conf /root/redis-2.8.8/redis.slave.conf
slave config:
port 6399 # 從庫埠號
slaveof 127.0.0.1 6389 #主庫ip地址以及埠號
#save引數,從庫開啟save,減輕主庫的讀寫壓力。
save 900 1
save 300 10
save 60 10000
7 啟動start the master and slave
#修改一下redis-conf裡面的
daemonize no,把no改為yes,可以後臺啟動。
/root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.conf
/root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.slave.conf
在後臺啟動
nohup /root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.conf &
nohup /root/redis-2.8.8/src/redis-server /root/redis-2.8.8/redis.slave.conf > /root/redis_slave.log &
8 check master & slave
訪問主庫
/root/redis-2.8.8/src/redis-cli -p 6389
登入從庫
/root/redis-2.8.8/src/redis-cli -p 6399
驗證主從資料一致性:
[root@localhost redis]# /root/redis-2.8.8/src/redis-cli -p6389
Unrecognized option or bad number of args for: '-p6389'
[root@localhost redis]# /root/redis-2.8.8/src/redis-cli -p 6389
127.0.0.1:6389>
127.0.0.1:6389>
127.0.0.1:6389> set name jame #往主庫中設定2組key-value值
OK
127.0.0.1:6389> set age 20
OK
127.0.0.1:6389> exit
[root@localhost redis]# /root/redis-2.8.8/src/redis-cli -p 6399
127.0.0.1:6399> get name #獲取主庫設定的key-value值,看是否已經從主庫傳遞到從庫了。
"jame"
127.0.0.1:6399> get age
"20"
127.0.0.1:6399>
8 驗證過程
如何判斷哪個是主哪個是從呢? 只需呼叫 info 這個命令就可以得到主從的資訊了,我們在從庫上執行 info 命令,如下所示:
127.0.0.1:6399> info
# Server
redis_version:2.8.8
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:a90848107b5eaf7f
redis_mode:standalone
os:Linux 2.6.32-358.el6.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.7
process_id:19513
run_id:c97e05680da496d58894963fb38045b9fba1b13d
tcp_port:6399
uptime_in_seconds:2672
uptime_in_days:0
hz:10
lru_clock:4722614
config_file:/root/redis-2.8.8/redis.slave.conf
# Clients
connected_clients:2
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
# Memory
used_memory:829360
used_memory_human:809.92K
used_memory_rss:7933952
used_memory_peak:829360
used_memory_peak_human:809.92K
used_memory_lua:33792
mem_fragmentation_ratio:9.57
mem_allocator:jemalloc-3.2.0
# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1397230798
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
# Stats
total_connections_received:1
total_commands_processed:271
instantaneous_ops_per_sec:0
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:2
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:3483
# Replication
role:slave
master_host:127.0.0.1
master_port:6389
master_link_status:up
master_last_io_seconds_ago:9
master_sync_in_progress:0
slave_repl_offset:3867
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
# CPU
used_cpu_sys:0.66
used_cpu_user:0.15
used_cpu_sys_children:0.01
used_cpu_user_children:0.00
# Keyspace
db0:keys=2,expires=0,avg_ttl=0
9 附帶redis短連線
redis r = redis.connect(xx)
r.set()
r.get()
r.close()
redis長連線,那就是如果不用的話,執行緒就是sleep,如果用的話,那麼就是query等的狀態。
10 redis的一些引數最佳化
vm-enabled設定為no
maxmemory :告訴Redis當使用了多少實體記憶體後就開始拒絕後續的寫入請求,該引數能很好的保護好你的Redis不會因為使用了過多的實體記憶體而導致swap,最終嚴重影響效能甚至崩潰。有個說法是一般不超過實體記憶體的3/5
Redis Hash 儲存:
hash-max-zipmap-entries 64
hash-max-zipmap-value 512
hash-max-zipmap-entries
同樣類似的引數有
list-max-ziplist-entries 512
說明:list資料型別多少節點以下會採用去指標的緊湊儲存格式。
list-max-ziplist-value 64
說明:list資料型別節點值大小小於多少位元組會採用緊湊儲存格式。
set-max-intset-entries 512
說明:set資料型別內部資料如果全部是數值型,且包含多少節點以下會採用緊湊格式儲存。
另外redis 的6種過期策略
redis 中的預設的過期策略是volatile-lru 。設定方式
config set maxmemory-policy volatile-lru
maxmemory-policy 六種方式
volatile-lru:只對設定了過期時間的key進行LRU(預設值)
allkeys-lru : 是從所有key裡 刪除 不經常使用的key
volatile-random:隨機刪除即將過期key
allkeys-random:隨機刪除
volatile-ttl : 刪除即將過期的
noeviction : 永不過期,返回錯誤
maxmemory-samples 3 是說每次進行淘汰的時候 會隨機抽取3個key 從裡面淘汰最不經常使用的(預設選項)
save 引數解讀:
save 900 1
save 300 10
save 60 10000
在900秒(15分鐘)內,至少有1次資料變更;
或者300秒內,有至少10次資料變更;
或者60秒內,有至少1000次資料變更;時間+資料變更次數,共同影響記憶體快照的出現。
PS:在主庫上註釋掉save功能,在從庫開啟save功能,會減少主庫的讀寫壓力。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26230597/viewspace-1145831/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- NoSQL之Redis配置解析SQLRedis
- NoSQL之Redis的配置優化SQLRedis優化
- NoSQL之Redis叢集部署解析SQLRedis
- 初識Redis之NoSQL+RDBMS演化史+什麼是NoSQLRedisSQL
- 2.NoSQL之Redis配置與優化SQLRedis優化
- nosql redis初志SQLRedis
- NoSql-Redis事務SQLRedis
- 【NoSQL】redis基本介紹SQLRedis
- NoSQL(MongoDB,Riak,CouchDB,Redis)SQLMongoDBRedis
- redis nosql 使用方法RedisSQL
- Nosql——Redis配置與優化SQLRedis優化
- NoSQL之CassandraSQL
- NoSQL之HBaseSQL
- Nosql/Redis/ttserver/Flare/memcache比較SQLRedisTTSServer
- redis-1.Nosql的介紹RedisSQL
- NoSQL概述和Redis的安裝SQLRedis
- 領略NoSQL的魅力—-Hello,Redis!SQLRedis
- redis(1)NoSQL資料庫簡介RedisSQL資料庫
- 主流NoSQL資料庫Redis專題SQL資料庫Redis
- NoSQL資料庫Redis之青幹劍(lists型別)的修煉SQL資料庫Redis型別
- JavaScript之坑我--陣列原理探析JavaScript陣列
- Nosql 資料庫 MemCache、Redis、MongoDB 的區別SQL資料庫RedisMongoDB
- 企業網路安全管理維護之探析
- nosql redis資料庫壓力測試基準工具redis-benchmarkSQLRedis資料庫
- Spring Boot 使用NoSQL之 MongoDBSpring BootSQLMongoDB
- MongoDB、Hbase、Redis等NoSQL優劣勢、應用場景MongoDBRedisSQL
- 2020重新出發,NOSQL,Redis的事務SQLRedis
- [Redis 系列]redis 學習一,資料庫的演進及 Nosql 的初步認知Redis資料庫SQL
- 2020重新出發,NOSQL,Redis主從複製SQLRedis
- 溫故知新之從原始碼探析jsp執行原理原始碼JS
- nosql-redis-網路資料學習-09-redis五大資料型別SQLRedis大資料資料型別
- resizableImageWithCapInsets 方法的探析API
- NoSQLSQL
- 【原創】NOSQL系列-Redis精簡版安裝與Ruby測試SQLRedis
- NoSQL之Redis叢集搭建——6臺伺服器,三臺主伺服器,三臺從伺服器SQLRedis伺服器
- NoSQL 新貴之崛起的 Neo4jSQL
- Redis服務之Redis ClusterRedis
- redis之 Redis持久化配置Redis持久化