亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

sersync實現數據實時同步的方法

2024-09-01 13:53:31
字體:
來源:轉載
供稿:網友

1.1 第一個里程碑:安裝sersync軟件

1.1.1 將軟件上傳到服務器當中并解壓

1、上傳軟件到服務器上 rz -E

為了便于管理上傳位置統一設置為 /server/tools 中

2、解壓軟件包

[root@backup sersync_installdir_64bit]# tree.└── sersync ├── bin │ └── sersync ├── conf │ └── confxml.xml └── logs

1.1.2 二進制包安裝方法

二進制包安裝軟件方法(綠色軟件安裝方法):

直接解壓就可以使用

[root@nfs01 sersync_installdir_64bit]# mv sersync/ /usr/local/[root@nfs01 tools]# tree /usr/local/sersync/ /usr/local/sersync/ ├── bin │ └── sersync ├── conf │ └── confxml.xml └── logsdirectories, 2 files

1.2 第二個里程碑:編寫sersync配置文件

1.2.1 常見的語法格式

rsync 配置文件編寫:ini語法

sersync配置文件編寫:xml語法

ansible配置文件編寫:yml 語法

1.2.2 修改配置文件

編寫前備份

[root@backup conf]# lltotal 4-rw-r--r-- 1 root root 2214 Oct 26 2011 confxml.xml[root@backup conf]# cp confxml.xml{,.bak}

6-11行表示排除同步的數據,等價于 --exclude 功能,表示排除

<filter start="false"> <exclude expression="(.*)/.svn"></exclude> <exclude expression="(.*)/.gz"></exclude> <exclude expression="^info/*"></exclude>  <exclude expression="^static/*"></exclude></filter>

12-21行是利用inotify的功能監控指定的事件,等價與 -e create,delete…… 表示指定監控事件信息

<inotify> <delete start="true"/> <createFolder start="true"/> <createFile start="false"/> <closeWrite start="true"/> <moveFrom start="true"/> <moveTo start="true"/> <attrib start="false"/> <modify start="false"/> </inotify>

24-28行:推送到哪里 name=模塊 是rsync服務器的地址

 <localpath watch="/data"> #監控那個目錄 <remote ip="172.16.1.41" name="backup"/> <!--<remote ip="192.168.8.39" name="tongbu"/>--> <!--<remote ip="192.168.8.40" name="tongbu"/>--> </localpath>

29-35行 定義rsync推送時的參數信息。

注意:不要有單詞拼寫錯誤 (true),否則程序不能正常啟動,卡死

<rsync> <commonParams params="-az"/> <auth start="true" users="rsync_backup" passwordfile="/etc/rsync.password"/> <userDefinedPort start="false" port="874"/><!-- port=874 --> <timeout start="false" time="100"/><!-- timeout=100 --> <ssh start="false"/></rsync>

配置文件最終內容:

[root@nfs01 tools]# cat /usr/local/sersync/conf/confxml.xml  <?xml version="1.0" encoding="ISO-8859-1"?> <head version="2.5"> <host hostip="localhost" port="8008"></host> <debug start="false"/> <fileSystem xfs="false"/> <filter start="false"> <exclude expression="(.*)/.svn"></exclude> <exclude expression="(.*)/.gz"></exclude> <exclude expression="^info/*"></exclude> <exclude expression="^static/*"></exclude> </filter> <inotify> <delete start="true"/> <createFolder start="true"/> <createFile start="false"/> <closeWrite start="true"/> <moveFrom start="true"/> <moveTo start="true"/> <attrib start="false"/> <modify start="false"/> </inotify> <sersync> <localpath watch="/data"> <remote ip="172.16.1.41" name="nfsbackup"/> <!--<remote ip="192.168.8.39" name="tongbu"/>--> <!--<remote ip="192.168.8.40" name="tongbu"/>--> </localpath> <rsync> <commonParams params="-az"/> <auth start="true" users="rsync_backup" passwordfile="/etc/rsync.password"/> <userDefinedPort start="false" port="874"/><!-- port=874 --> <timeout start="false" time="100"/><!-- timeout=100 --> <ssh start="false"/> </rsync> <failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mins execute once--> <crontab start="false" schedule="600"><!--600mins--> <crontabfilter start="false"> <exclude expression="*.php"></exclude> <exclude expression="info/*"></exclude> </crontabfilter> </crontab> <plugin start="false" name="command"/> </sersync> <plugin name="command"> <param prefix="/bin/sh" suffix="" ignoreError="true"/> <!--prefix /opt/tongbu/mmm.sh suffix--> <filter start="false"> <include expression="(.*)/.php"/> <include expression="(.*)/.sh"/> </filter> </plugin> <plugin name="socket"> <localpath watch="/opt/tongbu"> <deshost ip="192.168.138.20" port="8009"/> </localpath> </plugin> <plugin name="refreshCDN"> <localpath watch="/data0/htdocs/cms.xoyo.com/site/"> <cdninfo domainname="ccms.chinacache.com" port="80" username="xxxx" passwd="xxxx"/> <sendurl base="http://pic.xoyo.com/cms"/> <regexurl regex="false" match="cms.xoyo.com/site([/a-zA-Z0-9]*).xoyo.com/images"/> </localpath> </plugin></head>

1.3 第三里程碑: 啟動sersync

1.3.1 修改文件的權限(可執行)

首先讓程序讓文件有執行權限

[root@nfs01 bin]# chmod a+x sersync [root@nfs01 bin]# lltotal 1768-rwxr-xr-x 1 root root 1810128 Oct 26 2011 sersync

1.3.2 查看軟件的幫助信息

[root@nfs01 bin]# ./sersync -hset the system paramexecute:echo 50000000 > /proc/sys/fs/inotify/max_user_watchesexecute:echo 327679 > /proc/sys/fs/inotify/max_queued_eventsparse the command param_______________________________________________________重要參數-d:啟用守護進程模式重要參數-r:在監控前,將監控目錄與遠程主機用rsync命令推送一遍 參數-n: 指定開啟守護線程的數量,默認為10個重要參數-o:指定配置文件,默認使用confxml.xml文件 參數-m:單獨啟用其他模塊,使用 -m refreshCDN 開啟刷新CDN模塊 參數-m:單獨啟用其他模塊,使用 -m socket 開啟socket模塊 參數-m:單獨啟用其他模塊,使用 -m http 開啟http模塊不加-m參數,則默認執行同步程序________________________________________________________________

1.3.3 在程序的bin目錄下啟動程序

./sersync -dro /usr/local/sersync/conf/confxml.xml

1.3.4 啟動方法二

將/usr/local/sersync/bin/程序的bin目錄添加到PATH中

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/sersync/bin/

然后sersync命令就能直接使用

[root@nfs01 scripts]# sersync -dro /usr/local/sersync/conf/confxml.xml set the system paramexecute:echo 50000000 > /proc/sys/fs/inotify/max_user_watchesexecute:echo 327679 > /proc/sys/fs/inotify/max_queued_eventsparse the command paramoption: -d run as a daemonoption: -r rsync all the local files to the remote servers before the sersync workoption: -o config xml name: /usr/local/sersync/conf/confxml.xmldaemon thread num: 10parse xml config filehost ip : localhost host port: 8008daemon start,sersync run behind the console use rsync password-file :user is rsync_backuppasswordfile is /etc/rsync.passwordconfig xml parse successplease set /etc/rsyncd.conf max connections=0 Manuallysersync working thread 12 = 1(primary thread) + 1(fail retry thread) + 10(daemon sub threads) Max threads numbers is: 22 = 12(Thread pool nums) + 10(Sub threads)please according your cpu ,use -n param to adjust the cpu rate------------------------------------------rsync the directory recursivly to the remote servers onceworking please wait...execute command: cd /data && rsync -az -R --delete ./ rsync_backup@172.16.1.41::nfsbackup --password-file=/etc/rsync.password >/dev/null 2>&1 run the sersync: watch path is: /data

1.4 Inotify與 sersync總結對比

1.4.1 Inotify實時并發:

結論:經過測試,每秒200文件并發,數據同步幾乎無延遲(小于1秒)

1.4.2 inotify 優點:

1)監控文件系統事件變化,通過同步工具實現實時數據同步。

1.4.3 inotify 缺點

1)并發如果大于200個文件(10-100k),同步就會有延遲

2)我們前面寫的腳本,每次都是全部推送一次,但確實是增量的。也可以只同步變化的文件,不變化的不理。

3)監控到事件后,調用rsync同步是單進程的,而sersync為多進程同步。既然有了inotify-tools,為什么還要開發sersync?

1.4.4 serysync功能多:(inotify+rsync命令)

1)支持通過配置文件管理

2)真正的守護進程socket

3)可以對失敗文件定時重傳(定時任務功能)

4)第三方的HTTP接口(例如:更新cdn緩存)

5)默認多進程rsync同步

1.4.5 高并發數據實時同步方案小結:

1)inotify(sersync)+ rsync,是文件級別的。

2)drbd文件系統級別,文件系統級別,基于block塊同步,缺點:備節點數據不可用

3)第三方軟件的同步功能:mysql同步(主從復制),oracle,mongodb

4)程序雙寫,直接寫兩臺服務器。

5)利用產品業務邏輯解決(讀寫分離,備份讀不到,讀主)

sersync,數據,實時同步

2.1 man命令的級別

centos6

[root@nfs01 ~]# man man The standard sections of the manual include: User Commands     #用戶命令 System Calls     #系統調用 C Library Functions    # Ç庫函數 Devices and Special Files   #設備和特殊文件 File Formats and Conventions  #文件格式和約定 Games et. Al.     #游戲等。 Miscellanea     #雜記 System Administration tools and Daemons #系統管理工具和程序 Distributions customize the manual section to their specifics, which often include additional sections.

centos7

[root@clsn tuichu]# man ~ Executable programs or shell commands System calls (functions provided by the kernel) Library calls (functions within program libraries) Special files (usually found in /dev) File formats and conventions eg /etc/passwd Games Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) System administration commands (usually only for root) Kernel routines [Non standard]

以上這篇sersync實現數據實時同步的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美成年人视频网站欧美| 精品成人久久av| 91免费观看网站| 日韩在线视频一区| 欧美日韩国产一区中文午夜| 粗暴蹂躏中文一区二区三区| 在线观看欧美成人| 国产精品久久久久国产a级| 91天堂在线观看| 九九热精品视频国产| 97国产在线观看| 国产综合色香蕉精品| 欧美肥臀大乳一区二区免费视频| 国产精品一二三视频| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲丁香婷深爱综合| …久久精品99久久香蕉国产| 国产在线拍偷自揄拍精品| 国产精品久久久久久久久粉嫩av| 亚洲性夜色噜噜噜7777| 亚洲第一视频网站| 国产精品r级在线| 久久精品国产亚洲一区二区| 欧美激情精品久久久久久黑人| 色婷婷成人综合| 91精品久久久久久久久久久久久| 黄色一区二区在线观看| 国产精品福利无圣光在线一区| 2019最新中文字幕| 九九九热精品免费视频观看网站| 久热精品视频在线观看| 欧美性受xxxx白人性爽| 国产日韩在线看片| 国产欧洲精品视频| 欧美精品福利在线| 5252色成人免费视频| 人人澡人人澡人人看欧美| 欧美在线视频a| 色综合天天综合网国产成人网| 色播久久人人爽人人爽人人片视av| 91大神在线播放精品| 午夜精品久久久99热福利| 2019中文字幕在线| 97人人做人人爱| 久久久精品国产亚洲| 亚洲欧洲一区二区三区久久| 日韩欧美在线一区| 91夜夜揉人人捏人人添红杏| 欧美日韩加勒比精品一区| 日韩精品视频在线免费观看| 精品久久久久久中文字幕| 国产精品27p| 欧美日本啪啪无遮挡网站| 亚洲人成电影网站色www| 亚洲福利在线视频| 亚洲精品永久免费| 国产精品99导航| 国产精品久久久久久久久久东京| 国产欧美精品一区二区三区介绍| 精品国模在线视频| 国产在线不卡精品| 亚洲欧美一区二区三区情侣bbw| 亚洲人高潮女人毛茸茸| 亚洲日本欧美日韩高观看| 538国产精品一区二区免费视频| 国产精品视频男人的天堂| 69精品小视频| 亚洲美女动态图120秒| 欧美—级a级欧美特级ar全黄| 日韩av片免费在线观看| 欧美一级bbbbb性bbbb喷潮片| 主播福利视频一区| 久久99精品国产99久久6尤物| 国产精品成人观看视频国产奇米| 亚洲成人a级网| 亚洲国产欧美一区二区三区同亚洲| 欧洲亚洲在线视频| 成人黄色免费在线观看| 亚洲国产精品成人一区二区| 2024亚洲男人天堂| 亚洲精品女av网站| 亚洲少妇激情视频| 色yeye香蕉凹凸一区二区av| 91精品国产91久久久久久不卡| 国产美女91呻吟求| 亚洲人成网站免费播放| 欧美国产欧美亚洲国产日韩mv天天看完整| 国产亚洲精品久久久久久牛牛| 欧美在线视频观看免费网站| 欧美最顶级丰满的aⅴ艳星| 韩国日本不卡在线| 欧美激情一区二区三区在线视频观看| 国产精品美女久久久免费| 中文在线不卡视频| 亚洲精品理论电影| 国产福利视频一区| 亚洲精品国精品久久99热| 日韩欧美在线视频| 国产亚洲欧美一区| 日韩中文字幕免费看| 国产成人精品视| 色狠狠av一区二区三区香蕉蜜桃| 久久人人爽人人| 91手机视频在线观看| 欧美电影免费观看高清完整| 国产中文字幕日韩| 成人做爽爽免费视频| 日韩视频在线免费观看| 另类视频在线观看| 亚洲成人黄色在线| 亚洲天堂网站在线观看视频| 亚洲激情视频网站| 久久久精品国产网站| 国产精品视频成人| 日韩在线观看视频免费| 成人精品在线视频| 欧美交受高潮1| 亚洲日本中文字幕免费在线不卡| 亚洲精品国精品久久99热一| 色悠悠久久久久| 51色欧美片视频在线观看| 国产成人精品视频在线| 亚洲高清一区二| 91久久精品久久国产性色也91| 91久久精品国产91久久| 欧美午夜视频一区二区| 欧美亚洲另类在线| 成人激情视频免费在线| 欧美色道久久88综合亚洲精品| 午夜精品www| 日韩av中文字幕在线播放| 亚洲一区二区三区视频播放| 国产三级精品网站| 欧美性在线视频| 成人福利在线视频| 日韩精品高清在线| 亚州成人av在线| 久久久综合av| 91九色综合久久| 成人www视频在线观看| 亚洲视频在线视频| 国产精品视频区1| 亚洲最大福利网站| 热99精品只有里视频精品| 蜜臀久久99精品久久久久久宅男| 久久久久久久久久国产精品| 中文字幕亚洲综合久久| 国产精品99一区| 综合激情国产一区| 精品中文字幕视频| 欧美最顶级的aⅴ艳星| 亚洲综合小说区| 黄色成人av在线| 国产精品成av人在线视午夜片| 91在线免费观看网站| 亚洲国产免费av| 欧美视频在线视频| 日韩精品高清在线| 久久精品国产欧美激情| 91亚洲精品视频| 中文字幕日韩av| 日韩福利视频在线观看| 国产欧美日韩丝袜精品一区| 亚洲人成网站免费播放|