欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis讀寫分離搭建的完整步驟

 更新時間:2021年09月13日 10:16:51   作者:追風人聊Java  
為滿足讀多寫少的業(yè)務(wù)場景.最大化節(jié)約用戶成本.云數(shù)據(jù)庫Redis版推出了讀寫分離規(guī)格,為用戶提供透明、高可用、高性能、高靈活的讀寫分離服務(wù),這篇文章主要給大家介紹了關(guān)于Redis讀寫分離搭建的相關(guān)資料,需要的朋友可以參考下

1、概述

隨著企業(yè)業(yè)務(wù)的不斷擴大,請求的并發(fā)量不斷增長,Redis可能終會出現(xiàn)無法負載的情況,此時我們就需要想辦法去提升Redis的負載能力。

讀寫分離(主從復(fù)制)是一個比較簡單的擴展方案,使用多臺機器同時運行Redis服務(wù),一臺負責寫服務(wù),多臺負責讀服務(wù),通過多臺服務(wù)器對請求進行負載,大大提高了Redis服務(wù)的負載壓力。

最常見的讀寫分離是一主二從的模式,一臺主服務(wù)器負責Redis寫入服務(wù),兩臺從服務(wù)器負責Redis的讀取服務(wù),從服務(wù)器定時從主服務(wù)器復(fù)制Redis數(shù)據(jù)。

今天我們就來聊聊Redis的讀寫分離如何搭建的。

2、讀寫分離的搭建

2.1 場景說明

主服務(wù)器IP:192.168.1.144

從服務(wù)器A IP:192.168.1.22

從服務(wù)器B IP:192.168.1.8

這三臺服務(wù)器上都已經(jīng)安裝好了Redis環(huán)境,安裝方法參見我的另一篇文章《Redis的安裝、基本使用以及與SpringBoot的整合》。

2.2 修改從服務(wù)器A和從服務(wù)B的Redis配置

replicaof   設(shè)置Redis主服務(wù)的IP和端口

masterauth  設(shè)置Redis主服務(wù)的密碼

2.3 刪除從服務(wù)器A和從服務(wù)器B的數(shù)據(jù)文件

# cd/usr/local/redis/db

#rm -rf *.rdb *.aof

2.4 重啟從服務(wù)器A和從服務(wù)器B

#cd /etc/init.d/

#./redis_init_script stop

# ./redis_init_script start

2.5 查看主從狀態(tài)

# redis-cli

> AUTH zhuifengren

>info replication

主服務(wù)器狀態(tài):

從服務(wù)器A狀態(tài):

從服務(wù)器B狀態(tài):

2.6 測試主從復(fù)制

此時,在主服務(wù)器,寫入Redis值,在從服務(wù)器就可以讀取。

3、Redis讀寫分離優(yōu)勢

透明兼容

讀寫分離和普通集群規(guī)格一樣,都使用了redis-proxy做請求轉(zhuǎn)發(fā),多分片令使用存在一定的限制,但從主從升級單分片讀寫分離,或者從集群升級到多分片的讀寫分離集群可以做到完全兼容。

用戶和redis-proxy建立連接,redis-proxy會識別出客戶端連接發(fā)送過來的請求是讀還是寫,然后按照權(quán)重作負載均衡,將請求轉(zhuǎn)發(fā)到后端不同的DB節(jié)點中,寫請求轉(zhuǎn)發(fā)給master,讀操作轉(zhuǎn)發(fā)給read-only replica(master默認也提供讀,可以通過權(quán)重控制)。

用戶只需要購買讀寫分離規(guī)格的實例,直接使用任何客戶端即可直接使用,業(yè)務(wù)不用做任何修改就可以開始享受讀寫分離服務(wù)帶來的巨大性能提升,接入成本幾乎為0。

高可用

高可用模塊(HA)監(jiān)控所有DB節(jié)點的健康狀態(tài),為整個實例的可用性保駕護航。master宕機時自動切換到新主。如果某個read-only replica宕機,HA也能及時感知,然后重搭一個新的read-only replica,下線宕機節(jié)點。

除HA之外,redis-proxy也能實時感知每個read-only replica的狀態(tài)。在某個read-only replica異常期間,redis-proxy會自動降低這個節(jié)點的權(quán)重,如果發(fā)現(xiàn)某個read-only replica連續(xù)失敗超過一定次數(shù)以后,會暫時屏蔽異常節(jié)點,直到異常消失以后才會恢復(fù)其正常權(quán)重。

redis-proxy和HA一起做到盡量減少業(yè)務(wù)對后端異常的感知,提高服務(wù)可用性。

高性能

對于讀多寫少的業(yè)務(wù)場景,直接使用集群版本往往不是最合適的方案,現(xiàn)在讀寫分離提供了更多的選擇,業(yè)務(wù)可以根據(jù)場景選擇最適合的規(guī)格,充分利用每一個read-only replica的資源。

目前單shard對外售賣1 master + 1/3/5 read-only replica多種規(guī)格(如果有更大的需求可以提工單反饋),提供60萬QPS和192 MB/s的服務(wù)能力,在完全兼容所有命令的情況下突破單機的資源限制。后續(xù)將去掉規(guī)格限制,讓用戶根據(jù)業(yè)務(wù)流量隨時自由的增加或減少read-only replica數(shù)量。

4、綜述

今天介紹了Redis讀寫分離的搭建,相對來說是比較容易的,但讀寫分離有個缺點,當主服務(wù)宕機后,從服務(wù)是不能升級成主服務(wù)的。

為了解決這個單點問題,后面我們會介紹Redis的哨兵模式和集群模式。

到此這篇關(guān)于Redis讀寫分離搭建的文章就介紹到這了,更多相關(guān)Redis讀寫分離搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一文搞懂阿里云服務(wù)器部署Redis并整合Spring?Boot

    一文搞懂阿里云服務(wù)器部署Redis并整合Spring?Boot

    這篇文章主要介紹了一文搞懂阿里云服務(wù)器部署Redis并整合Spring?Boot,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • redis中使用bloomfilter的白名單功能解決緩存穿透問題

    redis中使用bloomfilter的白名單功能解決緩存穿透問題

    本文主要介紹了redis中使用bloomfilter的白名單功能解決緩存穿透問題,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 使用lua+redis解決發(fā)多張券的并發(fā)問題

    使用lua+redis解決發(fā)多張券的并發(fā)問題

    這篇文章主要介紹了使用lua+redis解決發(fā)多張券的并發(fā)問題,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • Redis總結(jié)筆記(二):C#連接Redis簡單例子

    Redis總結(jié)筆記(二):C#連接Redis簡單例子

    這篇文章主要介紹了Redis總結(jié)筆記(二):C#連接Redis簡單例子,需要的朋友可以參考下
    2015-01-01
  • Redis?BigKey的問題解決

    Redis?BigKey的問題解決

    本文主要介紹了Redis?BigKey的問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 一篇文章帶你弄清楚Redis的精髓

    一篇文章帶你弄清楚Redis的精髓

    Redis是一個開源的、支持網(wǎng)絡(luò)、基于內(nèi)存的鍵值對存儲系統(tǒng),它可以用作數(shù)據(jù)庫、緩存和消息中間件。它支持多種數(shù)據(jù)類型,包括字符串、散列、列表、集合、位圖等,擁有極快的讀寫速度,并且支持豐富的特性,如事務(wù)、持久化、復(fù)制、腳本、發(fā)布/訂閱等。
    2023-02-02
  • redis反序列化報錯原因分析以及解決方案

    redis反序列化報錯原因分析以及解決方案

    這篇文章主要介紹了redis反序列化報錯原因分析以及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Redis分布式鎖的實現(xiàn)方式

    Redis分布式鎖的實現(xiàn)方式

    本文主要介紹了Redis分布式鎖的實現(xiàn)方式,分布式鎖是?滿足分布式系統(tǒng)或集群模式下多進程可見并且互斥的鎖。感興趣的同學(xué)可以參考閱讀
    2023-04-04
  • 為什么RedisCluster設(shè)計成16384個槽

    為什么RedisCluster設(shè)計成16384個槽

    本文主要介紹了為什么RedisCluster設(shè)計成16384個槽,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Redis出現(xiàn)(error)NOAUTH?Authentication?required.報錯的解決辦法(秒懂!)

    Redis出現(xiàn)(error)NOAUTH?Authentication?required.報錯的解決辦法(秒懂!)

    這篇文章主要給大家介紹了關(guān)于Redis出現(xiàn)(error)NOAUTH?Authentication?required.報錯的解決辦法,對于 這個錯誤這通常是因為Redis服務(wù)器需要密碼進行身份驗證,但客戶端沒有提供正確的身份驗證信息導(dǎo)致的,需要的朋友可以參考下
    2024-03-03

最新評論