[發明專利]一種實現日志同步的方法、裝置及分布式系統有效
| 申請號: | 201610481891.6 | 申請日: | 2016-06-27 |
| 公開(公告)號: | CN107547593B | 公開(公告)日: | 2020-05-08 |
| 發明(設計)人: | 王偉;徐文韜;李健 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 北京中博世達專利商標代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實現 日志 同步 方法 裝置 分布式 系統 | ||
本申請公開了一種實現日志同步的方法、裝置及分布式系統,涉及計算機存儲技術領域,能夠提高需要處理大量日志的分布式系統的吞吐量,并減小該系統的負載。該方法包括:在第一時刻確定在第一時間段內采用延遲寫方式處理待復制日志;根據延遲寫方式,暫停在第一時間段內執行對所有待復制日志的復制流程,并緩存至少一個第一待復制日志和至少一個第二待復制日志,以生成批量日志,第一待復制日志為在在第一時刻之前獲取到的且未復制的待復制日志,第二待復制日志為在第一時間段內獲取到的待復制日志;在第二時刻發送攜帶批量日志的操作請求消息;接收響應消息,并在確定用于表示確認的響應消息的數量大于或等于第一預設閾值時,發送通知消息。
技術領域
本申請涉及計算機存儲技術領域,尤其涉及一種實現日志同步的方法、裝置及分布式系統。
背景技術
現有的分布式系統通常采用Raft協議來實現系統中各個節點中數據的一致性。在采用Raft協議的分布式系統中,包括一個主(Leader)節點和至少一個從(Follower)節點。Leader節點主要處理所有與客戶端的交互,發起日志復制等操作。Follower節點主要是被動的接受來自Leader節點的操作請求。
在采用Raft協議的分布式系統中,實現數據一致性的方法一般包括如下兩個階段:
1、請求階段:Leader節點向所有Follower節點發送攜帶某一日志的操作請求消息,系統中的每個Follower節點接收到操作請求消息后,向Leader節點返回響應消息,該響應消息用于表示該Follower節點同意該操作請求或者不同意該操作請求;
2、復制階段:若超過一半的Follower節點返回的響應消息均用于表示同意,則Leader節點向所有Follower節點發送通知消息,用以通知各Follower節點復制該日志,即通知各個Follower節點將該日志寫入本地磁盤。
采用上述方法,若分布式系統中存在n個Follower節點,對于某一日志而言,系統需要處理至少3×n條消息才能完成該日志的復制。這樣,對于需要處理大量日志的分布式系統而言,該分布式系統中需要發送的消息的數量會特別大,該分布式系統的負載較大。此外,分布式系統只能逐條處理上述消息,這樣,分布式系統只能逐個對每一日志進行復制處理,極大的限制了該分布式系統的吞吐量。
發明內容
本申請的實施例提供一種實現日志同步的一致性的方法、裝置及分布式系統,能夠提高需要處理大量日志的分布式系統的吞吐量,并減小該系統的負載。
為達到上述目的,本申請的實施例采用如下技術方案:
第一方面,本申請實施例提供一種實現日志同步的方法,主節點在第一時刻確定其在第一時間段內采用延遲寫方式處理待復制日志之后,根據延遲寫方式,暫停自身在所述第一時間段內執行對所有待復制日志的復制流程,并緩存至少一個第一待復制日志和至少一個第二待復制日志,以生成批量日志,第一待復制日志為該主節點在第一時刻之前獲取到的且未復制的待復制日志,第二待復制日志為該主節點在第一時間段內獲取到的且未復制的待復制日志,第一時刻為第一時間段的起始時刻;主節點在第二時刻向至少一個從節點發送攜帶批量日志的操作請求消息,用于請求至少一個從節點中的每個從節點復制批量日志,相應的,該主節點會接收到至少一個從節點發送的響應消息,進而,在確定用于表示確認的響應消息的數量(即第一數量)大于或等于第一預設閾值時,該主節點向至少一個從節點發送通知消息,用于指示每個從節點復制批量日志。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610481891.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種改進型市政工程垃圾桶
- 下一篇:一種新型車廂可卸式垃圾車





