• Chubby lock service for distributed system


    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
    
  • 相关阅读:
    MFC对话框编程四:输入焦点的传递
    lua笔记 一个C++调用lua函数的类的实现
    [置顶] 设计模式之享元模式
    扩展实现PHP Benchmark
    TLD如何运行OpenTLD(TLD_HY20121127)
    [Oracle] Kill Session 经验总结
    php 该如何获取从百度搜索进入网站的关键词
    php+js实现百度地图多点标注的方法
    laraveladmin 报错 Disk [admin] not configured, please add a disk config in `config/filesystems.php`....
    PHP获取当前页面的url
  • 原文地址:https://www.cnblogs.com/renolei/p/5468924.html
Copyright © 2020-2023  润新知