redis 部署生産環境
redis cluster,10 台機器,5 台機器部署了 redis 主執行個體,另外 5 台機器部署了 redis 的從執行個體,每個主執行個體挂了一個從執行個體,5 個節點對外提供讀寫服務,每個節點的讀寫高峰qps可能可以達到每秒 5 萬,5 台機器最多是 25 萬讀寫請求/s。
機器是什麼配置?32G 記憶體+ 8 核 CPU + 1T 磁盤,但是配置設定給 redis 程序的是10g記憶體,一般線上生産環境,redis 的記憶體盡量不要超過 10g,超過 10g 可能會有問題。
5 台機器對外提供讀寫,一共有 50g 記憶體。
因為每個主執行個體都挂了一個從執行個體,是以是高可用的,任何一個主執行個體當機,都會自動故障遷移,redis 從執行個體會自動變成主執行個體繼續提供讀寫服務。
你往記憶體裡寫的是什麼資料?每條資料的大小是多少?商品資料,每條資料是 10kb。100 條資料是 1mb,10 萬條資料是 1g。常駐記憶體的是 200 萬條商品資料,占用記憶體是 20g,僅僅不到總記憶體的 50%。目前高峰期每秒就是 3500 左右的請求量。
其實大型的公司,會有基礎架構的 team 負責緩存叢集的運維。