中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis集群進行故障檢測的方法

發布時間:2020-06-30 17:53:26 來源:億速云 閱讀:496 作者:清晨 欄目:關系型數據庫

小編給大家分享一下Redis集群進行故障檢測的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!

Redis集群進行故障檢測的方法:首先修改Python腳本,每隔1s寫入一條數據;然后循環往Redis集群中寫入數據,并強制殺掉一個主節點觀察應用程序連接情況;最后重啟宕機的8001節點即可。

Redis集群進行故障檢測的方法

Redis集群進行故障檢測的方法:自動故障轉移測試

修改Python腳本,每隔1s寫入一條數據,目的是便于觀察在主節點宕機,集群自動故障轉移這個時間段之之內(1s鐘左右),對于應用程序的影響,或者說應用程序在自動故障轉移前后的表現。

如下腳本循環往Redis集群中寫入數據,執行期間,強制殺掉一個主節點,觀察應用程序連接情況。
同時,如果發生異常,暫停應用程序2s,因為上面一開始配置的集群故障轉移時間是1s,如果應用程序暫停2s,完全可以跳過故障轉移的過程,當故障轉移完成之后,應用程序又恢復成正常狀態,雖然8001節點宕機,應用程序繼續連接8001節點,但是應用程序完全無感知。

import timefrom time import ctime,sleepfrom rediscluster import StrictRedisCluster
startup_nodes = [
    {"host":"111.231.253.***", "port":8001},
    {"host":"111.231.253.***", "port":8002},
    {"host":"111.231.253.***", "port":8003},
    {"host":"111.231.253.***", "port":8004},
    {"host":"111.231.253.***", "port":8005},
    {"host":"111.231.253.***", "port":8006}
]
redis_conn= StrictRedisCluster(startup_nodes=startup_nodes, decode_responses=True,password="root")for i in range(0, 100000):    try:
        redis_conn.set('name' + str(i), str(i))        print('setting name' + str(i) +"--->" + time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
        time.sleep(1)    except:        print("connect to redis cluster error")
        time.sleep(2)

發現在殺掉主節點之后,僅發生了一次連接錯誤,隨后因為Redis集群的自動故障轉移成功,對應于程序來說是透明的,因此應用程序隨后正常工作,不受其中一個主節點宕機的影響。

Redis集群進行故障檢測的方法

集群此時的狀態,8001節點宕機,明顯,8001對應的從節點8004接管主節點,升級為master,對外提供服務

Redis集群進行故障檢測的方法

觀察升級為主節點的8004實例日志,會發現在強制殺掉原8001主節點之后,1秒鐘之內,成功替代8001升級為master節點
如果在故障轉移的過程中,沒有應用程序訪問Redis,應用程序甚至完全不知道Redis集群發生了故障轉移,只要不發生集群中某一個節點的主從節點同時宕機,整個集群就沒有問題,且對應用程序完全透明。

Redis集群進行故障檢測的方法

隨后重啟宕機的8001節點,會發現8001節點自動變為其原從節點(8004)的從節點

Redis集群進行故障檢測的方法

看完了這篇文章,相信你對Redis集群進行故障檢測的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

无为县| 洞口县| 正镶白旗| 四会市| 仪陇县| 阳新县| 黎川县| 宁武县| 莱芜市| 耿马| 万盛区| 阳城县| 望江县| 思茅市| 伊吾县| 无锡市| 永顺县| 昭平县| 龙陵县| 鹿泉市| 丹阳市| 兰西县| 吉林省| 南安市| 黄梅县| 韶山市| 西乌珠穆沁旗| 连城县| 满城县| 从江县| 阿坝县| 化州市| 望江县| 喜德县| 浮梁县| 同德县| 桃源县| 祁连县| 霍州市| 武汉市| 高台县|