分布式学习总结

知识点总结

最近要忙着找工作了,为了准备面试,就发奋图强的看了和分布式相关的书籍,对知识点进行了一个总结,总结如下:
1. 分布式系统是将服务分布在不同的机器上,或者是在同一台机器上启动多个进程或者线程来应对不断变化的变化的客户端数量,所有分布式系统应该应该具有可扩展性,由于系统涉及到多个进程和线程之间的相互协作,所有可靠的通信以及多线程同步是非常重要的。
2. 分布式系统一个重要的功能就是数据的存储,为了保证数据的可容错性,需要对数据进行冗余备份,而且为了让数据能均匀的分布在服务器集群中,可以通过一致性hash算法来实现数据的均匀存储。
3. 数据的可容错性,可以通过增加数据的副本来实现,这样还有一个好处就是可以使得数据的并发访问,由于一个数据具有多个副本,所以可以将用户对数据的访问请求分散到不同的服务器上,并发的执行。当然这样也就存在另外一个问题:如何保证多个副本数据的一致性?目前比较热门的有2PC、3PC、Paxos、ZooKeeper的ZAB算法。

总结

没有十全十美的解决方案,根据不同的应用需求在CAP(C:一致性,A:可用性,P:分区容错性)之间进行权衡。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值