[發明專利]一種數據同步方法及裝置在審
| 申請號: | 201610195298.5 | 申請日: | 2016-03-30 |
| 公開(公告)號: | CN107295031A | 公開(公告)日: | 2017-10-24 |
| 發明(設計)人: | 賈新禹;馬華標 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L12/24 |
| 代理公司: | 北京國昊天誠知識產權代理有限公司11315 | 代理人: | 黃熊 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據 同步 方法 裝置 | ||
技術領域
本申請涉及計算機技術領域,尤其涉及一種數據同步方法及裝置。
背景技術
隨著互聯網技術的蓬勃發展,人們越來越多的通過互聯網來處理各種業務。在這些業務處理的過程中,通常由用戶端向服務端提交業務請求,由服務端來進行業務處理并記錄業務處理過程中所產生的數據。在實際應用中,由于基于互聯網的業務處理請求較多,通常會在服務端布置多臺服務器,通過這些服務器來進行業務處理。但是,這種通過多臺服務器處理業務請求的方式,通常會遇到數據不同步的問題。例如,用戶端向服務端提交添加好友的業務請求,在服務端由服務器A對該業務請求進行處理,并記錄該業務處理過程中所產生的數據,但是在服務器B和服務器C中卻沒有關于該業務處理的記錄。
現有技術通過將服務端的多臺服務器,分別設置為主、從(Master、Slave)服務器的方式來解決數據同步的問題。這種方式通常將服務端的某一臺服務器設置為主(Master)服務器,該服務器之外的其它服務器設置為從(Slave)服務器,并且將每臺從服務器分別和主服務器進行連接。當其中一臺從服務器的數據更新后,會將該更新后的數據同步到主服務器,再由主服務器將該更新后的數據同步到其它的從服務器,從而完成各服務器之間的數據同步。
然而,這種現有技術的問題是,在服務端設置為主、從服務器后,各個服務器之間的數據同步過程均依賴于主服務器。當該主服務器出現故障時,通常會導致服務端的各服務器無法進行數據同步。
發明內容
本申請實施例提供一種數據同步方法及裝置,用于解決現有技術中,在服務端設置主、從服務器后,各個服務器之間的數據同步依賴主服務器的問題。
本申請實施例提供一種數據同步方法,所述方法用于實現不同業務服務器之間的數據同步,所述業務服務器與分布式集群連接,所述業務服務器預先在所述分布式集群中注冊為監聽對象,所述方法包括:
當所述分布式集群監聽到作為監聽對象的一個業務服務器上的數據發生變化后,向作為監聽對象的各個業務服務器發送數據同步請求,以便各個業務服務器在接收所述數據同步請求后,通過所述分布式集群進行數據同步。
優選地,所述分布式集群具體為Zookeeper分布式集群;則,
在所述Zookeeper分布式集群中,通過下述方法將所述業務服務器注冊為監聽對象:
所述Zookeeper分布式集群接收業務服務器發送的注冊成為監聽對象的業務請求;
所述Zookeeper分布式集群通過所述業務請求生成用于監聽所述業務服務器的監聽節點。
優選地,所述Zookeeper分布式集群通過下述方法監聽到作為監聽對象的業務服務器上的數據發生變化:
當所述Zookeeper分布式集群監聽到作為監聽對象的業務服務器對監聽節點進行數據操作時,確定所述業務服務器上的數據發生變化,所述數據操作具體為所述業務服務器根據所述業務服務器上的數據變化的結果,對所述Zookeeper分布式集群上的監聽節點進行的數據操作。
優選地,所述數據操作具體包括:數據寫入和/或數據刪除。
優選地,所述作為監聽對象的業務服務器對監聽節點進行數據寫入具體包括:所述業務服務器向所述Zookeeper分布式集群發送加分布式鎖的業務請求,以便所述Zookeeper分布式集群根據所述分布式鎖的使用狀態判斷是否能夠向所述業務服務器加分布式鎖;
當所述業務服務器加分布式鎖后,對所述監聽節點進行數據寫入。
優選地,所述作為監聽對象的業務服務器對監聽節點進行數據刪除具體包括:所述業務服務器刪除所述監聽節點中所述數據的存儲路徑。
優選地,所述分布式集群包括至少兩個同步服務器,所述同步服務器與業務服務器連接并且各個同步服務器之間的數據能夠同步;則,
所述通過所述分布式集群進行數據同步具體包括:通過所述分布式集群中與各所述業務服務器連接的同步服務器進行數據同步。
本申請實施例還提供一種數據同步方法,所述方法用于實現不同業務服務器之間的數據同步,所述業務服務器與分布式集群連接,所述業務服務器預先在所述分布式集群中注冊為監聽對象,所述方法包括:
作為監聽對象的各個業務服務器接收數據同步請求,所述數據同步請求為所述分布式集群在監聽到作為監聽對象的一個業務服務器上的數據發生變化后,向作為監聽對象的各個業務服務器發送的數據同步請求;
作為監聽對象的各個業務服務器在接收數據同步請求后,通過所述分布式集群進行數據同步。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610195298.5/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





