一、redis-port
https://cloud.tencent.com/document/product/239/33786
redis-port 是一組開源工具集合,主要用于 Redis 節點間的資料庫同步、資料導入、資料導出,支援 Redis 的跨版本資料遷移,工具集中包括以下工具:
- redis-sync:支援在 Redis 執行個體之間進行資料遷移。
- redis-restore:支援将 Redis 的備份檔案(RDB)導入到指定 Redis 執行個體。
- redis-dump:支援将 Redis 的資料備份為 RDB 格式檔案。
- redis-decode:支援将 Redis 備份檔案(RDB)解析為可讀的檔案。
二、redis-shake資料同步&遷移工具
https://developer.aliyun.com/article/691794
redis-shake是阿裡雲Redis&MongoDB團隊開源的用于redis資料同步的工具。
redis-shake是我們基于redis-port基礎上進行改進的一款産品。它支援解析、恢複、備份、同步四個功能。以下主要介紹同步sync。
- 恢複restore:将RDB檔案恢複到目的redis資料庫。
- 備份dump:将源redis的全量資料通過RDB檔案備份起來。
- 解析decode:對RDB檔案進行讀取,并以json格式解析存儲。
- 同步sync:支援源redis和目的redis的資料同步,支援全量和增量資料的遷移,支援從雲下到阿裡雲雲上的同步,也支援雲下到雲下不同環境的同步,支援單節點、主從版、叢集版之間的互相同步。需要注意的是,如果源端是叢集版,可以啟動一個RedisShake,從不同的db結點進行拉取,同時源端不能開啟move slot功能;對于目的端,如果是叢集版,寫入可以是1個或者多個db結點。
- 同步rump:支援源redis和目的redis的資料同步,僅支援全量的遷移。采用scan和restore指令進行遷移,支援不同雲廠商不同redis版本的遷移。
redis-shake的基本原理就是模拟一個從節點加入源redis叢集,首先進行全量拉取并回放,然後進行增量的拉取(通過psync指令)。如下圖所示:

三、redis壓力測試工具redis-benchmark
Redis 自帶了一個叫
redis-benchmark
的工具來模拟 N 個用戶端同時發出 M 個請求。 (類似于 Apache ab 程式)。你可以使用 redis-benchmark -h 來檢視基準參數。
redis-benchmark -h 127.0.0.1 -p 6379 -c 50 -n 10000
redis-benchmark -h 127.0.0.1 -p 6379 -c 50 -n 10000 -q
redis-benchmark -h 10.23.118.79 -p 6379 -c 50 -n 10000 -t PING_INLINE,SET,GET,INCR,MSET --csv
http://www.redis.cn/topics/benchmarks.html redis中文社群
redis-shake: https://github.com/aliyun/redis-shake 開源位址