1. 程式人生 > >Chubby: The Chubby lock service for loosely-coupled distributed systems

Chubby: The Chubby lock service for loosely-coupled distributed systems

作者:劉旭暉 Raymond 轉載請註明出處

更多論文閱讀筆記 http://blog.csdn.net/colorant/article/details/8256145

關鍵字

Chubby, Paxos, 分散式鎖服務

== 目標問題 ==

為分散式系統提供一個粗顆粒度的鎖服務,同時提供小容量的檔案儲存服務

== 核心思想 ==

使用服務形式而不是Library形式來提供Paxos邏輯的解決方案。附帶提供小容量檔案儲存服務用來儲存決策的結果和其它輔助資訊等,用來滿足系統分發告知的需求。

鎖不是強制的,需要客戶端遵循獲得鎖才能操作資料的規範。

一個Chubby的服務典型的由5個節點組成,通過

Master lease來選舉和維持一個主節點,所有的客戶端讀寫操作都導向主節點來完成,主節點通過Paxos過程同步副本節點的資料。

為了用較小的代價來支援大量的客戶端連線。系統提供事件通知的機制來減少客戶端Polling的需要。但是還是有很多應用是需要Polling的,因此進一步使用Cache的機制在客戶端快取結果。

事件通知包括:檔案內容的修改,子節點的新增刪除(實現例如發現新服務等),chubby Master失效,檔案控制代碼失效等等。

客戶端在伺服器端維護一個依靠KeepAlive資訊更新的Session,通過KeepAlive訊息的傳遞來更新Cache等。

== 相關研究,專案等

==

Paxos 同步的理論基礎

Zookeeper 提供類似的檔案API介面,以及客戶端Cache等機制,用於分散式系統協同工作,但是不提供鎖服務,客戶端自己通過瞬態檔案等的支援用自己特定的規則實現鎖服務。

== 其它 ==

設計的初衷是提供分散式鎖服務,但是在Google內部,由於檔案儲存,客戶端Cache等機制,被大量用作為NameService (DNS服務)


相關推薦

Chubby: The Chubby lock service for loosely-coupled distributed systems

作者:劉旭暉 Raymond 轉載請註明出處 更多論文閱讀筆記 http://blog.csdn.net/colorant/article/details/8256145 關鍵字 Chub

another app is currently holding the yum lock;waiting for it to exit

Another app is currently holding the yum lock; waiting for it to exit… /var/run/yum.pid 被鎖定 解決方法: rm -rf /var/run/yum.pid

Linux工作筆記026---Centos7.3 yum提示Another app is currently holding the yum lock; waiting for it to exit.

這個問題是由於,上午通過堡壘機,裝著,然後到飯點了,去吃飯, 吃飯回來,連結超時,然後裝著的東西就卡在那了... 出現了這個問題 使用yum安裝計劃任務功能,結果提示: # yum -y i

yum問題 Another app is currently holding the yum lock; waiting for

[[email protected] SPECS]# yum install rubyAnother app is currently holding the yum lock; waiting for it to exit...Another app is cu

Another app is currently holding the yum lock; waiting for it to exit...

Another app is currently holding the yum lock; waiting for it to

flutter run 時一直 Waiting for another flutter command to release the startup lock

一切都是沒問題的 在執行flutter doctor 一直提示 Waiting for another flutter command to release the startup lock。。。 查了一下github的flutter issue 找到了解決方法,如下:  1、開

Flutter開發中遇到的坑 - Waiting for another flutter command to release the startup lock

本機環境 系統:Windows 10 X64 IDE:Android Studio 這個錯誤發生於在編譯器裡get package,等了很久沒有獲取到package之後,我果斷關掉了AS,開啟終端輸入了flutter doctor但是出現了這個錯誤。 查了一

Waiting for another flutter command to release the startup lock...

開發十年,就只剩下這套架構體系了! >>>   

linux導出Excel The maximum column width for an individual cell is 255 characters

class exce 方案 linu excel cnblogs cte for char linux環境到處Excel報錯: The maximum column width for an individual cell is 255 characters 解決方案:

轉 11g Grid Control: Overview of the EMCTL Options Available for Managing the Agent

and agen font man .com rom access pri into Please set the ORACLE_HOME to your Agent Home location usingFor Unix:export ORACLE_HOME=/o

Use the following method printPrimes() for questions a-f below

int 技術分享 case code nes ati http conn design Use the following method printPrimes() for questions a-f below Code /************************

yum提示Another app is currently holding the yum lock

holding the yum lockyum提示Another app is currently holding the yum lock; waiting for it to exit...[root@tomcat ~]# yum repolist Another app is currently hol

[yum]Another app is currently holding the yum lock

yum linux arppinging yum 安裝 提示錯誤 提示信息: Another app is currently holding the yum lock; waiting for it to exit... The other application is: PackageK

Warning: Permanently added the RSA host key for IP address '52.74.223.119' to the list of known hosts.

IT hub 說明 ESS IV 公鑰 RM style ssh 如果出現這個問題,說明你的github缺少公鑰 使用 ssh -T [email protected] 去測試 1.生成密鑰 ssh-keygen -t rsa -C "your name" #引號裏輸入你的用

使用Mysql Workbench 導入數據庫提示 ERROR 1227 (42000) at line 18: Access denied; you need (at least one of) the SUPER privilege(s) for

很多 workbench enc mys mysql 創建 oot info ima 今天再復制服務器上數據庫的時候(使用Mysql Workbench )提示1227錯誤, 數據庫版本5.7.18,復制到的數據庫也是5.7.18。 總結一下網上的幾種方法: 方法一:

Permanently added the RSA host key for IP address '192.30.253.113' to the list of known hosts.

refs forward 本地 total warn 其中 rom ip add forwards $git push origin master 報錯: Warning: Permanently added the RSA host key for IP address

No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android

The 問題 lin issue androi 回來 mips lam 上傳 原文:No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android今天把

ios之error: The sandbox is not in sync with the Podfile.lock.

當我們編譯ios工程時,有時會遇到這個報錯。此時,關閉當前的工作空間,刪除以前的.xcworkspace檔案,然後執行pod install命令,install之後,重新開啟專案,clean並build專案,問題解決。 如果遇到pod install命令執行失敗,可以參考連線https://

Android Studio - No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android

錯誤提示: No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android 錯誤原因:確實是缺少對應的檔案,我出現這種情況是升級了NDK之後。 解決辦法:把缺失檔案放到NDK

Inf2A 2018–19: Assignment 1 The Language Processing Pipeline for Micro-Haskell

代寫Inf2A留學生作業、代做Micro-Haskell作業、代做Java課程設計作業、代寫Java程式作業Inf2A 2018–19: Assignment 1The Language Processing Pipeline for Micro-HaskellIssued 12 October 2018Th