Chubby lock service在分布式系统中的应用

Chubby lock service在分布式系统中提供粗粒度的锁服务, 以及可靠的存储. 相比高性能, 设计的重点在于高可靠性和高可用性.

1. 介绍

Chubby lock service应用在高速网络互联的机群组成的低耦合分布式系统.

一个Chubby instance(也叫Chubby cell)可能服务上万台1Gbit/s网络互联的4核处理器的机器. 虽然可以运行至少一个副本相隔数千公里的Chubby cell, 但大多数Chubby cell受限于单个数据中心或机房.

lock service的目是允许客户端同步自己的活动(议案), 并对它们所处环境的基本信息取得一致. 最主要的目是在适度大规模的机群的可靠性、可用性, 以及易于理解的语义, 相对的吞吐量以及存储容量相对没那么重要. Chubby客户端接口很类似一个简单的文件系统提供读-写, 不过增强了例如文件修改的锁咨询和事件通知.

Chubby可以帮助开发者粗粒度的处理分布式系统的同步, 尤其是在从一组等效的服务器之间选举出来leader的问题.

  • Google的GFS使用Chubby lock委任GFS master server.
  • Bigtable也同样使用Chubby: 选举master, 允许master检测其他受控的服务器, 允许客户端检测master.
  • GFS和Bigtable使用Chubby存储小量的meta数据, 事实上在用Chubby做为分布式系统的root data structures, 一些服务使用lock来在服务器之间分区工作.

在分布式环境中leader选举是一个分布式一致性问题, 需要一个异步通信方法, 在真实的网络环境中, 网络包可能丢失、延迟、或者被排序重改, Paxos协议解决了这个异步一致性问题. Paxos在没有时钟假设的前提下保证了安全性, 但是必须引入时钟来确保存活性(liveness).

http://static.googleusercontent.com/media/research.google.com/zh-CN//archive/chubby-osdi06.pdf

Chubby lock service for distributed system的更多相关文章

  1. 分布式系统(Distributed System)资料

    这个资料关于分布式系统资料,作者写的太好了.拿过来以备用 网址:https://github.com/ty4z2008/Qix/blob/master/ds.md 希望转载的朋友,你可以不用联系我.但 ...

  2. 分布式学习材料Distributed System Prerequisite List

    接下的内容按几个大类来列:1. 文件系统a. GFS – The Google File Systemb. HDFS1) The Hadoop Distributed File System2) Th ...

  3. [Big Data - ZooKeeper] ZooKeeper: A Distributed Coordination Service for Distributed Applications

    ZooKeeper ZooKeeper: A Distributed Coordination Service for Distributed Applications Design Goals Da ...

  4. 译《Time, Clocks, and the Ordering of Events in a Distributed System》

    Motivation <Time, Clocks, and the Ordering of Events in a Distributed System>大概是在分布式领域被引用的最多的一 ...

  5. Aysnc-callback with future in distributed system

    Aysnc-callback with future in distributed system

  6. Note: Time clocks and the ordering of events in a distributed system

    http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf 分布式系统的时钟同步是一个非常困难的问题,this ...

  7. Notes on Distributed System -- Distributed Hash Table Based On Chord

    task: 基于Chord实现一个Hash Table 我负责写Node,队友写SuperNode和Client.总体参考paper[Stoica et al., 2001]上的伪代码 FindSuc ...

  8. COS418, Distributed System, Go Language

    本博客是MIT的分布式系统课程的课后作业Cos418的GO语言实现思路.由于时间有限,目前只实现了assignment1~2. 在common.go中设置debugEnabled = true,go ...

  9. 「2014-2-23」Note on Preliminary Introduction to Distributed System

    今天读了几篇分布式相关的内容,记录一下.非经典论文,非系统化阅读,非严谨思考和总结.主要的着眼点在于分布式存储:好处是,跨越单台物理机器的计算和存储能力的限制,防止单点故障(single point ...

随机推荐

  1. Camera2与TextureView使用

    package com.intsig.bcrsdk.demo.Activity; import android.annotation.TargetApi; import android.app.Act ...

  2. PAT 1084 外观数列

    https://pintia.cn/problem-sets/994805260223102976/problems/994805260583813120 外观数列是指具有以下特点的整数序列: d, ...

  3. 【bzoj2705】[SDOI2012]Longge的问题 欧拉函数

    题目描述 Longge的数学成绩非常好,并且他非常乐于挑战高难度的数学问题.现在问题来了:给定一个整数N,你需要求出∑gcd(i, N)(1<=i <=N). 输入 一个整数,为N. 输出 ...

  4. [洛谷P2590][ZJOI2008]树的统计

    题目大意:一棵树,支持三个操作, $CHANGE\;u\;t:$ 把结点$u$的权值改为$t$ $QMAX\;u\;v:$ 询问从点$u$到点$v$的路径上的节点的最大权值 $QSUM\;u\;v:$ ...

  5. BZOJ2286 [Sdoi2011]消耗战 【虚树 + 树形Dp】

    2286: [Sdoi2011]消耗战 Time Limit: 20 Sec  Memory Limit: 512 MB Submit: 4261  Solved: 1552 [Submit][Sta ...

  6. word公式编辑中的转义字符

    Some of the commonly used symbols:      \infty - Infinity      \leq - Less then or equal      \geq - ...

  7. HDU2732:Leapin' Lizards(最大流)

    Leapin' Lizards Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  8. Kafka自我学习-报错篇

    1. kafka启动出现:Unsupported major.minor version 52.0 错误,  具体的错误输出: Exception in thread "main" ...

  9. 解决在ios下不能自动播放音频的问题

    在ios下面是不允许自动播放音频这个操作的,不过我们可以使用微信提供的sdk来做到自动播放音乐的功能 wx.ready(()=>{}) 引入微信的sdk,之后在回调函数里面执行主动触发背景音乐播 ...

  10. jquery实现通用结构折叠面板效果

    效果截图: 说明:可以任意添加多个类似结构样式,点击标题栏图片对应隐藏.显示. jquery代码: 思路一:基本方法 <script src="http://apps.bdimg.co ...