您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

01 節點訂閱鏈接怎么用不死(redis硬盤中斷節點不死)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-01 04:56:34【】3人已围观

简介redis硬盤中斷節點不死redis硬盤中斷節點不死1、主從超時(主從連接超時超過repl-timeout配置的值)a.數據同步階段:在主從節點進行全量復制bgsave時,主節點需要首先fork子進程

redis硬盤中斷節點不死

redis硬盤中斷節點不死1、主從超時(主從連接超時超過repl-timeout配置的值)

a.數據同步階段:在主從節點進行全量復制bgsave時,主節點需要首先fork子進程將當前數據保存到RDB文件中,然后再將RDB文件通過網絡傳輸到從節點。如果RDB文件過大,主節點在fork子進程+保存RDB文件時耗時過多,可能會導致從節點長時間收不到數據而觸發超時;此時從節點會重連主節點,然后再次全量復制,再次超時,再次重連……這是個悲傷的循環。為了避免這種情況的發生,除了注意Redis單機數據量不要過大,另一方面就是適當增大repl-timeout值,具體的大小可以根據bgsave耗時來調整。

b.命令傳播階段:如前所述,在該階段主節點會向從節點發送PING命令,頻率由repl-ping-slave-period控制;該參數應明顯小于repl-timeout值(后者至少是前者的幾倍)。否則,如果兩個參數相等或接近,網絡抖動導致個別PING命令丟失,此時恰巧主節點也沒有向從節點發送數據,則從節點很容易判斷超時。

c.慢查詢導致的阻塞:如果主節點或從節點執行了一些慢查詢(如keys *或者對大數據的hgetall等),導致服務器阻塞;阻塞期間無法響應復制連接中對方節點的請求,可能導致復制超時。

2、復制緩沖區溢出(緩沖區超過client-output-buffer-limit slave)

在全量復制階段,主節點會將執行的寫命令放到復制緩沖區中,該緩沖區存放的數據包括了以下幾個時間段內主節點執行的寫命令:bgsave生成RDB文件、RDB文件由主節點發往從節點、從節點清空老數據并載入RDB文件中的數據。當主節點數據量較大,或者主從節點之間網絡延遲較大時,可能導致該緩沖區的大小超過了限制,此時主節點會斷開與從節點之間的連接;這種情況可能引起全量復制->復制緩沖區溢出導致連接中斷->重連->全量復制->復制緩沖區溢出導致連接中斷……的循環。

復制緩沖區的大小由client-output-buffer-limit slave { hard limit} { soft limit} { soft se買粉絲nds}配置,默認值為client-output-buffer-limit slave 256MB 64MB 60,其含義是:如果buffer大于256MB,或者連續60s大于64MB,則主節點會斷開與該從節點的連接。該參數是可以通過買粉絲nfig set命令動態配置的(即不重啟Redis也可以生效)。

注:

復制緩沖區(client-output-buffer-limit slave)是客戶端輸出緩沖區的一種,主節點會為每一個從節點分別分配復制緩沖區;

而復制積壓緩沖區(repl-backlog-size)則是一個主節點只有一個,無論它有多少個從節點。

很赞哦!(8137)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:河北省张家口怀安县

工作室:小组

Email:[email protected]