rsync服務的搭建

??

目錄

一、rsync介紹

rsync的安裝

二、rsync的語法

三、rsync命令使用

1. 本機同步

2. 遠程同步

四、rsync作為服務使用

1、嘗試啟動rsync程序

2、rsync的配置文件介紹

注意事項:

3. rsync+inotify實時同步

3.依賴服務托管xinetd(CentOS 6中rsync)


一、rsync介紹

  • rsync的好姐妹
    1. sync 同步:刷新文件系統緩存,強制將修改過的數據塊寫入磁盤,并且更新超級塊。
    2. async 異步:將數據先放到緩沖區,再周期性(一般是30s)的去同步到磁盤。
    3. rsync 遠程同步:remote synchronous。
  • rsync的特點
    1. 可以鏡像保存整個目錄樹和文件系統

    2. 可以保留原有的權限(permission,mode),owner,group,時間(修改時間,modify time),軟硬鏈接,文件acl,文件屬性(attributes)信息等

    3. 傳輸效率高,使用同步算法,只比較變化的(增量備份)

      file1.txt file2.txt file3.txt(A服務器)

      file1.txt file2.txt(B服務器)

      rsync實現數據同步 => 只同步file3.txt => 增量備份

    4. 支持匿名傳輸,方便網站鏡像;也可以做驗證,加強安全

rsync與scp區別?

????????兩者都可以實現遠程同步,但是相對比而言,rsync能力更強。表現在:① 支持增量備份;② 數據同步時保持文件的原有屬性。

rsync的安裝

yum install rsync -y
#在這里我比較推薦yum安裝,比較方便

rsync認證方式

????????rsync有兩種常用的認證方式,一種是rsync-daemon方式(客戶端連接873端口,實現數據傳輸, 傳輸過程不加密),另外一種是ssh方式(走ssh加密通道)。在 rsync 命令中,如果使用單個冒號(:),則默認使用 ssh 協議; 反之,如果使用兩個冒號(::),則使用 rsync 協議。 在平時使用過程,我們使用最多的是rsync-daemon方式。 注意:(1)在使用rsync時,服務器和客戶端都必須安裝rsync程序。?(2)、rsync-daemon認證方式,需要服務器和客戶端都安裝rsync服務并且只需要rsync服務器端啟動rsync,同時配置rsync配置文件。 客戶端啟動不啟動rsync服務,都不影響同步的正常進行。(3)ssh認證方式,不需要服務器和客戶端配置rsync配置文件 只需要雙方都安裝rsync服務,并且也不需要雙方啟動rsync。

????????兩種認證方式的本質區別:(1)、ssh 協議認證連接的兩端是通過管道完成通信和數據傳輸的,當連接到遠程主機時,將在遠程主 機 fork 出 rsync 進程使其成為 rsync server;(2)、而 rsync 協議認證是事先在遠程主機上運行 rsync 守護進 程,監聽套接字等待客戶端的連接,建立連接后所有通信方式都是通過套接字完成的。

二、rsync的語法

  • man rsync
NAMErsync — a fast, versatile, remote (and local) file-copying tool//一種快速、通用、遠程(和本地)的文件復制工具SYNOPSISLocal:  rsync [OPTION...] SRC... [DEST]Access via remote shell://通過遠程shell訪問(命令)Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]Push: rsync [OPTION...] SRC... [USER@]HOST:DESTAccess via rsync daemon://通過后臺程序訪問(作為服務)Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]Push: rsync [OPTION...] SRC... [USER@]HOST::DESTrsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
  • rsync命令參數
	-v    	詳細模式輸出-a    	歸檔模式,遞歸的方式傳輸文件,并保持文件的屬性,equals -rlptgoD-r    	遞歸拷貝目錄-l		保留軟鏈接-p    	保留原有權限-t     	保留原有時間(修改)-g    	保留屬組權限-o     	保留屬主權限-D    	等于--devices  --specials    表示支持b,c,s,p類型的文件-R	    保留相對路徑-H    	保留硬鏈接-A    	保留ACL策略-e     	指定要執行的遠程shell命令-E     	保留可執行權限-X     	保留擴展屬性信息  a屬性

三、rsync命令使用

1. 本機同步

注意:
1. 本地數據同步的時候,源目錄后面的“/”會影響同步的結果# rsync -av /dir1/ /dir3		//只同步dir1目錄下面的文件到指定的路徑# rsync -av /dir1 /dir2		//將當前目錄dir1和目錄下的所有文件一起同步2. -R:不管加不加"/",都會將源數據的絕對路徑一起同步# rsync -avR /dir1/ /dir2/
3. --delete:刪除目標目錄里多余的文件# rsync -avR --delete /dir1/ /dir2/

2. 遠程同步

pull: rsync -av user@host:/path local/path
# rsync -av root@10.1.1.1:/etc/hosts /dir1/
# rsync -av root@10.1.1.1:/backup /dir1
push: rsync -av local/path user@host:/path
# rsync -av /dir1/aa1 code@10.1.1.1:/home/code

思考:

rsync遠程同步數據時,默認情況下為什么需要密碼?如果不想要密碼同步怎么實現?

因為兩臺Linux服務器在連接時,默認使用的還是SSH協議。由于沒有做免密登錄,所以還是需要輸入對方服務器的密碼。
如果不想輸入密碼,可以使用免密登錄來實現。
# ssh-keygen
# ssh-copy-id root@10.1.1.250

四、rsync作為服務使用

思路:

對外提供服務——>端口監聽——>啟動服務——>啟動腳本(沒有)——>配置文件(修改需求)

1、嘗試啟動rsync程序

[root@jumper ~]# rsync --daemon
Failed to parse config file: /etc/rsyncd.conf
說明:先嘗試以后臺程序的方式啟動它
原因:沒有配置文件(默認沒有)
解決:創建配置文件
[root@jumper ~]# touch /etc/rsyncd.conf
[root@jumper ~]# rsync --daemon        
[root@jumper ~]# ps -ef|grep rsync
root       3814      1  0 11:43 ?        00:00:00 rsync --daemon
root       3817   2826  0 11:44 pts/0    00:00:00 grep rsync
[root@jumper ~]# netstat -nltup|grep rsync
tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN      3814/rsync          
tcp        0      0 :::873                      :::*                        LISTEN      3814/rsync    
結論:
1. rsync啟動時必須要讀取配置文件,如果沒有報錯
2. rsync默認情況下,端口是873,協議tcp#或者啟動rsyncd服務(CentOS6中沒有,CentOS7中有這個服務)
# systemctl start rsyncd 

2、rsync的配置文件介紹

man 5 rsyncd.conf
全局的參數port = xxxpid file = xxx...
局部模塊
[模塊名1]path = /dir1uid = xxxgid = xxxlog file = xxxmax connections =4.....
[模塊名2]path = /dir2uid =xxxgid = xxx.....# 以 rsync 用戶啟動進程
# 傳輸文件使用的用戶和用戶組,如果是從服務器=>客戶端,要保證rsync用戶對文件有讀取的權限;如果是
從客戶端=>服務端,要保證rsync對文件有寫權限。
uid = rsync
gid?=?rsync
# uid和gid表明同步上來的文件寫入的時候是使用哪個用戶身份進行寫入的。所以,這個用戶必須要對 
path 定義的目錄有寫入權限。否則會在客戶端報:rsync: xxx failed: Permission denied (13)
fake super = yes ? ?
# 如果設置為yes,那么文件的所有者和所屬組信息變成rsync虛擬用戶的UID,GID,想要所有者和所屬組信
息不變可以設置fake super ? 
use?chroot?=?yes
# 禁錮推送的數據至某個目錄, 不允許跳出該目錄
#允許chroot,提升安全性,客戶端連接模塊,首先chroot到模塊path參數指定的目錄下,chroot為yes時
必須使用root權限,且不能備份path路徑外的鏈接文件max?connections?=?200 ? ? ? ? ? ? ? ? ? # 最大連接數
timeout?=?300 ? ? ? ? ? ? ? ? ? ? ? ? ? # 超時時間
pid?file?=?/var/run/rsyncd.pid ? ? ? ? ?# pid文件路徑
lock?file?=?/var/run/rsync.lock ? ? ? ? # 鎖文件路徑
exclude = lost+found/ ? ? ? ? ? ? ? ? ? # 剔除某些文件或目錄,不同步
transfer logging = yes ? ? ? ? ? ? ? ? ?# 記錄傳輸文件日志
log?file?=?/var/log/rsyncd.log ? ? ? ? ?# 指定日志文件
log format = %t %a %m %f %b ? ? ? ? ? ? # 日志文件格式
ignore?errors ? ? ? ? ? ? ? ? ? ? ? ? ? # 忽略錯誤信息
list?=?false ? ? ? ? ? ? ? ? ? ? ? ? ? ?# 不允許查看模塊信息
hosts?allow?=?192.168.42.0/24 ? ? ? ? ? # 只允許192.168.42.0/24段ip連接
hosts?deny?=?* ? ? ? ? ? ? ? ? ? ? ? ? ?# 不允許所有網段ip連接
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 # 設置不需要壓縮的文件
path = /home/nebula/backup ? ? ? ? ? ? ?# 上傳的文件存儲的目錄,下載文件的讀目錄
comment = nebula userdata backup        #共享給客戶端看到的名字,可以自己定義
read?only?=?false ? ? ? ? ? ? ? ? ? ? ? # backup這個模塊兒,是否可以被寫入。
auth users = youyou ? ? ? ? ? ? ? ? ? ? # 虛擬用戶名,即就是上傳時rsync命令書寫中寫的。
secrets file = /etc/rsync.password      #密碼文件,服務端書寫格式為虛擬用戶名:密碼 客戶端的書寫格式為  虛擬用戶所對應的密碼# 以下為安全配置,請按照具體的生產環境需求配置。如:上傳到服務端上的文件,并不希望被客戶端同步
刪除refuse options = delete delete-delay delete-before delete-excluded deleteaftermax-delete force partial P
# pre-xfer 用于可以在rsync傳送之前,執行一些操作,如建立鎖定文件,保證每次只有一個鏈接進行
數據傳輸,
# post-xfer 可以保證數據傳輸完畢之后可以自動執行后續動作。
pre-xfer exec = sh /root/.rsync_pre.sh
post-xfer exec = rm -f /var/rsync.lock

日志文件格式補充:

注意事項:

  1. 不論是在服務端還是客戶端,密碼文件的權限都必須是600,否則就會報錯。服務端rsync服務是以什么用戶運行,則必須保證secrets file文件擁有者必須是同一個。假設root運行rsync --daemon,則secrets file的owner也必須是root;secrets file權限必須是600。
  2. 在服務器端端盡量將所同步的文件的屬主和屬組改為rsyncd.conf文件中對應的uid和gid對應的用戶和用戶組。避面上傳和下載的時候發生不必要的錯誤。
  3. 要想給服務端的模塊下上傳文件,就必須要在服務端的配置文件中對相應的模塊中添加 read only=false,否則上傳文件就會失敗。
  4. auter users中的用戶是不用在服務端創建的(只是虛擬存在而已),而uid和gid對應的用戶和用戶組必須是存在的(一般我們把uid指定為useradd -r系統用戶或useradd -M不創建家目錄,并且會指定shell為/sbin/nologin);雖然我們在遠程上傳和本地下載的時候用的是對應的虛擬用戶,但是在rsync在驗證的是時候是這里uid和gid。
  5. 沒有密碼有好處也有壞處,好處是不需要密碼方便寫腳本做遠程同步;壞處就是不安全,但你可以使用防火墻等來加強安全。
  6. 同步可能出現的問題:
    • 如果同步報permission denied這種,可能是服務端selinux沒有關閉
    • 同步時間慢:解決方法——綁定對方主機名
  7. 如果你希望有密碼,可以用rsyncd本身自帶的secrets file來做用戶驗證

3. rsync+inotify實時同步

需求:app1-server服務器上的/app/java_project目錄的文件和backup主機上的/backup目錄實時同步
分析:rsync本身不可以做到數據的實時同步,需要借助第三方工具,intotify工具。實現線上環境目錄發生改變立馬同步到backup主機,是單向同步。

參考-------備份端的rsyncd.conf的配置如下:

[my_java]
path=/root/java
comment=my_java.bak
log file=/var/log/rsyncd.log
uid=java_user
gid=java_user
auth users=xiaowang
secrets file=/etc/rsyncd.secrets
read only=false
ignore errors
服務端得創建用戶
useradd -s /sbin/nologin -M java_user
服務端的密碼文件
echo "xiaowang:123456" >> /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets
客戶端的密碼文件
echo "123456" >> /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets

步驟:
1. 在服務器端上安裝inotify工具

  • 原碼安裝或者結合epel源使用yum 進行安裝
  • 安裝完后,就會產生下面兩個命令

/usr/local/bin/inotifywait ?????等待? 、/usr/local/bin/inotifywatch ????看守

2. 查看命令如何使用,然后編寫腳本來實現目錄的監控

  • 注意:該腳本應該在備份服務器運行,該服務器是往備份服務器上進行推送
# inotifywait --help

  • -m 保持監控狀態
  • -r 遞歸監控
  • -q 只打印事件
  • -e 指定事件

事件:

  • move?? ?移動、delete?? ?刪除、create?? ?創建、modify?? ?修改、attrib?? ?屬性信息
  • 編寫腳本-----實時監控要鏡像備份的目錄(腳本我們后面會講到)
vim /root/inotify.sh#!/bin/bash
/usr/bin/inotifywait -mrq -e modify,delete,create,attrib,move /root/java.bak | while read events
dorsync -av --delete --password-file=/etc/rsyncd.secrets /root/java.bak/ xiaowang@192.168.17.3::my_java/   &> /dev/nullecho "`date +%F\ %T`出現事件$events" >> /var/log/rsyncd.log 2>&1
done# chmod +x inotify.sh?? ??? ?增加可執行權限
# ./inotify.sh ?&?? ??? ??? ?將腳本放到后臺去運行

注意:
????????如果單純使用命令去推的話,正常情況下需要密碼,不利于腳本編寫,在這里提供2中解決方案:1)設置免密碼登錄;2)在backup服務器上將rsync作為后臺程序運行

3. 測試驗證

[root@localhost java.bak]# touch file.c
[root@localhost java.bak]# rm -rf file.c
[root@localhost java.bak]# cat /var/log/rsyncd.log
2025-06-01 22:25:54出現事件/root/java.bak/ CREATE file.c
2025-06-01 22:25:55出現事件/root/java.bak/ ATTRIB file.c
2025-06-01 22:25:56出現事件/root/java.bak/ DELETE file.c

3.依賴服務托管xinetd(CentOS 6中rsync)

獨立服務:獨立啟動腳本 ssh ftp nfs dns …

依賴服務: 沒有獨立的啟動腳本? 依賴xinetd服務(獨立服務)

  1. 平時不占用系統的運行資源
  2. xinetd服務管理依賴服務
  3. 一些輕量級服務會托管給xinetd服務

如何將rsync托管給xinetd服務去管理?

1. 安裝相應的軟件

?yum -y install xinetd

2. 查看軟件類別

rpm -ql xinetd
/etc/rc.d/init.d/xinetd
/etc/xinetd.conf
/etc/xinetd.d ? xinetd服務管理的所有輕量級服務的目錄
/usr/sbin/xinetd
/usr/share/man/man5/xinetd.conf.5.gz

3. 查看rsync軟件列表

rpm -ql rsync
/etc/xinetd.d/rsync
/usr/bin/rsync

4. 了解配置文件

  • 1)xinetd服務的配置文件
man 5 xinetd.conf
only_from?? ??? ?只允許訪問
no_access?? ??? ?拒絕訪問
access_times?? ?控制訪問服務的時間段
log_type?? ??? ??? ?指定日志類型
interface?? ??? ?并發連接數
per_source?? ??? ?每個IP的最大連接數
  • 2)rsync配置文件 /etc/xinetd.d/rsync
service rsync
{disable?? ?= no?? ??? ?//開關;no表示開啟該服務;yes表示關閉服務flags?? ??? ?= IPv6socket_type ? ? = streamwait ? ? ? ? ? ?= nouser ? ? ? ? ? ?= rootserver ? ? ? ? ?= /usr/bin/rsyncserver_args ? ? = --daemonlog_on_failure ?+= USERID
}

5. 把rsync服務的開關打開
6. 啟動xinetd服務

service xinetd restart
[root@jumper ~]# netstat -nltp|grep 873
tcp ? ? ? ?0 ? ? ?0 :::873 ? ? ? ? ? ? ? ? ? ? ?:::* ? ? ? ? ? ? ? ? ? ? ? ?LISTEN ? ? ?6209/xinetd ? ?

到此,rsync服務就托管給了xinetd服務管理;后續需要有些需求,修改配置文件:
/etc/rsyncd.conf/etc/xinetd.d/rsync

?本? ?篇? ?完? ?結? ?…? …


持? ? ?續? ? ?更? ? ?新? ? ?中???…? ? …?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/83269.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/83269.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/83269.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【C/C++】面試基礎題目收集

C 軟件開發面試中常見的刷題題目通常可分為以下幾大類:數據結構與算法、系統編程、面向對象設計、C 語言特性、并發編程等。 🧠 一、數據結構與算法(力扣/牛客經典題) 掌握 STL 和底層結構實現能力: 📌 數…

將手機網絡經USB數據線和本地局域網共享給華為AP6050DN無線接入點

引言 由于最近裝畢的新家所在的小區未能及時通寬帶,于是家中各類無線設備如何上網就成了首要要解決的問題。 鑒于家中要聯網的設備多、類型雜、支持頻段也不一,總是開手機熱點不是回事兒,于是就想著把手機網絡引至華為AP6050DN無線接入點中,讓家中所有的無線設備都能快速高…

【數據結構】圖論核心算法解析:深度優先搜索(DFS)的縱深遍歷與生成樹實戰指南?

深度優先搜索 導讀:從廣度到深度,探索圖的遍歷奧秘一、深度優先搜索二、算法思路三、算法邏輯四、算法評價五、深度優先生成樹六、有向圖與無向圖結語:深潛與回溯,揭開圖論世界的另一面 導讀:從廣度到深度,…

Flink CEP實踐總結:使用方法、常見報錯、優化與難點應對

Flink CEP實踐總結:使用方法、常見報錯、優化與難點應對 隨著實時數據分析需求的提升,Flink CEP(Complex Event Processing,復雜事件處理)成為事件流檢測中的利器。本文結合實際項目經驗,總結Flink CEP的基…

Python數據類型詳解:從字符串到布爾值,一網打盡

Python是現代編程語言中非常流行的一種,它的語法簡潔、易懂,非常適合初學者。而在Python編程中,“數據類型”是最基礎也是最重要的概念。理解這個概念,將為你之后的編程打下堅實的基礎。 1. 什么是數據類型? 在Pytho…

python打卡day42

Grad-CAM與Hook函數 知識點回顧 回調函數lambda函數hook函數的模塊鉤子和張量鉤子Grad-CAM的示例 在深度學習中,我們經常需要查看或修改模型中間層的輸出或梯度,但標準的前向傳播和反向傳播過程通常是一個黑盒,很難直接訪問中間層的信息。PyT…

中國風展示工作總結商務通用PPT模版

中國風展示工作總結商務通用PPT模版:中國風商務通用PPT 模版https://pan.quark.cn/s/42ad18c010d4

TeleAI發布TeleChat2.5及T1正式版,雙雙開源上線魔樂社區!

5月12日,中國電信開源TeleChat系列四個模型,涵蓋復雜推理和通用問答的多個尺寸模型,包括TeleChat-T1-35B、TeleChat-T1-115B、TeleChat2.5-35B和TeleChat2.5-115B,實測模型性能均有顯著的性能效果。TeleChat系列模型基于昇思MindS…

機器視覺2D定位引導一般步驟

機器視覺的2D定位引導是工業自動化中的核心應用,主要用于精確確定目標物體的位置(X, Y坐標)和角度(旋轉角度θ),并引導機器人或運動機構進行抓取、裝配、對位、檢測等操作。其一般步驟可概括如下: 一、系統規劃與硬件選型 明確需求: 定位精度要求(多少毫米/像素,多少…

兒童節快樂,聊聊數字的規律和同余原理

某年的6月1日是星期日。那么,同一年的6月30日是星期幾? 星期是7天一個循環。所以說,這一天是星期幾,7天之后同樣也是星期幾。而6月30日是在6月1日的29天之后:29 7 4 ... 1用29除以7,可以得出余數為1。而…

最佳實踐|互聯網行業軟件供應鏈安全建設的SCA縱深實踐方案

在數字化轉型的浪潮中,開源組件已成為企業構建云服務與應用的基石,但其引入的安全風險也日益凸顯。某互聯網大廠的核心安全研究團隊,通過深度應用軟件成分分析(SCA)技術,構建了一套覆蓋開源組件全生命周期管…

Docker Compose(容器編排)

目錄 什么是 Docker Compose Docker Compose 的功能 Docker Compose 使用場景 Docker Compose 文件(docker-compose.yml) Docker Compose 命令清單 常見命令說明 操作案例 總結 什么是 Docker Compose docker-compose 是 Docker 官方的開源項…

【網絡安全】輕量敏感路徑掃描工具

訂閱專欄,獲取文末項目源碼。 文章目錄 工具簡介工具特點項目結構使用方法1.環境準備2.配置目標URL3.運行掃描4.結果查看5.自定義擴展項目源碼工具簡介 該工具是一款基于Python的異步敏感路徑掃描工具,用于檢測目標網站是否存在敏感文件或路徑泄露(如配置文件、密鑰、版本控…

SpringAI+DeepSeek大模型應用開發實戰

內容來自黑馬程序員 這里寫目錄標題 認識AI和大模型大模型應用開發模型部署方案對比模型部署-云服務模型部署-本地部署調用大模型什么是大模型應用傳統應用和大模型應用大模型應用 大模型應用開發技術架構 SpringAI對話機器人快速入門會話日志會話記憶 認識AI和大模型 AI的發…

高溫爐制造企業Odoo ERP實施規劃與深度分析報告

摘要 本報告旨在為高溫爐生產企業提供一個基于Odoo 18平臺的企業資源規劃(ERP)系統實施的全面分析與規劃。報告首先系統梳理了高溫爐制造業獨特的業務流程特點,隨后詳細映射了Odoo 18各核心模塊功能與這些業務需求的匹配程度。重點分析了生產…

簡述什么是全局鎖?它的應用場景有哪些?

全局鎖是數據庫管理系統中的一種特殊鎖機制,用于對整個數據庫實例進行加鎖,使數據庫處于只讀狀態,阻止所有數據更新(DML)、數據定義(DDL)及更新類事務提交等操作。 其核心應用場景包括&#xf…

window 顯示驅動開發-呈現開銷改進(二)

對共享表面的紋理格式支持 驅動程序應支持共享資源和可共享的后臺緩沖區,以使用 DXGI_FORMAT 枚舉中的這些附加紋理格式: DXGI_FORMAT_A8_UNORMDXGI_FORMAT_R8_UNORMDXGI_FORMAT_R8G8_UNORMDXGI_FORMAT_BC1_TYPELESS\*DXGI_FORMAT_BC1_UNORMDXGI_FORMAT…

jenkins集成gitlab實現自動構建

jenkins集成gitlab實現自動構建 前面我們已經部署了Jenkins和gitlab,本文介紹將二者結合使用 項目源碼上傳至gitee提供公網訪問:https://gitee.com/ye-xiao-tian/my-webapp 1、創建一個群組和項目 2、添加ssh密鑰 #生成密鑰 [rootgitlab ~]# ssh-keyge…

barker-OFDM模糊函數原理及仿真

文章目錄 前言一、巴克碼序列二、barker-OFDM 信號1、OFDM 信號表達式2、模糊函數表達式 三、MATLAB 仿真1、MATLAB 核心源碼2、仿真結果①、barker-OFDM 模糊函數②、barker-OFDM 距離分辨率③、barker-OFDM 速度分辨率④、barker-OFDM 等高線圖 四、資源自取 前言 本文進行 …

深入解析 Redis Cluster 架構與實現(一)

#作者:stackofumbrella 文章目錄 Redis Cluster特點Redis Cluster與其它集群模式的區別集群目標性能hash tagsMutli-key操作Cluster Bus安全寫入(write safety)集群節點的屬性集群拓撲節點間handshake重定向與reshardingMOVED重定向ASK重定向…