Redis集群~StackExchange.redis連接Twemproxy代理服務器


回到目錄

本文是Redis集群系列的一篇文章,主要介紹使用StackExchange.Redis進行Twemproxy(文中簡稱TW)代理服務的連接過程,事務上,對於TW來說,我們需要理解一下它的物理架構,它類似於Nugix,主要實現的是請求轉發,但它還有一個重要的功能,那就是自動分片,這對於大數據是很必要的,你的服務器需要橫向擴展時,不需要告訴客戶端,這是一種很理解化的設計模式,當然,也對於Redis來說,在配置TW之后,是可以被全美支持的!

  1. 關於tw和Redis集群的設計圖
  2. 關於StackExchange.Redis驅動對TW的支持
  3. 關於Redis3.0以后的Cluster集群
  4. 關於Redis的主從模式的集群
  5. 關於Redis的哨兵Sentinel

關於tw和Redis集群的設計圖

關於StackExchange.Redis驅動對TW的支持

            ConfigurationOptions options = new ConfigurationOptions();
            options.Proxy = Proxy.Twemproxy;
            options.EndPoints.Add("127.0.0.1:6379");
            options.EndPoints.Add("127.0.0.1:6380");

關於Redis3.0以后的Cluster集群

主要特點:

1):節點自動發現

2):slave->master 選舉,集群容錯

3):Hot resharding:在線分片

4):集群管理:cluster xxx

5):基於配置(nodes-port.conf)的集群管理

6):ASK 轉向/MOVED 轉向機制.

架構圖:

關於Redis的主從模式的集群

與早期版一樣,可以通過修改conf文件,為它添加slaveof屬性來實現各redis服務器之間的主從關系,主從的數據同步可以認為是實時的。

設計圖:

關於Redis的哨兵Sentinel

Redis 的 Sentinel 系統用於管理多個 Redis 服務器(instance), 該系統執行以下三個任務:

  • 監控(Monitoring): Sentinel 會不斷地檢查你的主服務器和從服務器是否運作正常。
  • 提醒(Notification): 當被監控的某個 Redis 服務器出現問題時, Sentinel 可以通過 API 向管理員或者其他應用程序發送通知。
  • 自動故障遷移(Automatic failover): 當一個主服務器不能正常工作時, Sentinel 會開始一次自動故障遷移操作, 它會將失效主服務器的其中一個從服務器升級為新的主服務器, 並讓失效主服務器的其他從服務器改為復制新的主服務器; 當客戶端試圖連接失效的主服務器時, 集群也會向客戶端返回新主服務器的地址, 使得集群可以使用新主服務器代替失效服務器。

以上關於cluster,sentinel的相關詳細的說明,我們會在后面的文章中依次介紹到,夠請關注!

回到目錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM