开篇词 | 想成为分布式高手?那就先把协议和算法烂熟于心吧
该思维导图由 AI 生成,仅供参考
分布式算法是分布式技术中的核心
方法得当,知识并不难学
写在最后
- 深入了解
- 翻译
- 解释
- 总结
本文深入探讨了分布式系统的重要性以及分布式算法在实际工作中的应用。作者强调了分布式算法作为分布式技术的核心和关键,对于想要深入了解分布式技术的人来说,掌握分布式算法是至关重要的。文章分为理论篇、协议和算法篇以及实战篇三个模块,涵盖了分布式系统的基础理论、常用算法的原理、特点、适用场景和常见误区,以及分布式算法在工程实践中的应用。通过学习本文,读者将能够破除对分布式协议和算法的困惑,建立信心,掌握可落地的分布式基础理论和常用的分布式协议和算法,以及通过实战案例学习,全面拥有分布式算法的实战能力。文章内容丰富,涵盖了分布式系统的核心知识,对于想要深入了解分布式技术的读者具有很高的参考价值。
2020-02-1045人觉得很赞给文章提建议
《分布式协议与算法实战》,新⼈⾸单¥59
全部留言(49)
- 最新
- 精选
- 业余草分步试 ——> 分布式 一、分布式锁 数据库的唯一索引 Redis 的 SETNX 指令 Redis 的 RedLock 算法 Zookeeper 的有序节点 二、分布式事务 2PC 本地消息表 三、CAP 一致性 可用性 分区容忍性 权衡 四、BASE 基本可用 软状态 最终一致性 五、Paxos 执行过程 约束条件 六、Raft 单个 Candidate 的竞选 多个 Candidate 竞选 数据同步
作者回复: 加油!细节是魔鬼,一起吃透细节,彻底掌握。
2020-02-1053 - 约书亚所有编程的技术点里最喜欢的就是分布式系统一致性和可用性相关的部分。但个人感觉面架构师时分布式算法提到的不是非常多...我在挺长时间里积累了相当多的多分布式的问题: 我们也在用InfluxDB免费版,也为单机问题感到苦恼。企业版不是不开源么?您是怎样研究的呢? 看过某云的InfluxDB服务高可用版的架构图,应该就是基于raft实现一主两从的数据复制,这样会否对InfluxDB原本非常高的写吞吐量造成很大的影响? 不仅仅是etcd此类中间件,现在连要支持极高吞吐量的MQ中间件,有的都开始使基于raft算法了,到底raft经过改造后对整体吞吐量的拖累能降到多低?哪个实现的代码更典型更适合来学习呢? 一直想实现一个集群之间复制数据的功能,想基于gossip,但看到gossip很多都使用在集群成员管理上,不知道在多大流量的尺度上,使用gossip是合适的?erlang的OTP和支持分布式一致性的数据库,底层使用的是什么算法? 像eureka,redis sentinel等中间件的分布式算法,有没有什么理论依据?还是纯“瞎蒙”? 还有很多问题,希望随着此门课程的学习能得到答案。 最后,20节太短,如果老师还有个人博客/公众号/或者其他作品能让我持续学习就更好了。
作者回复: 有些问题,我会在后续内容中具体说说,比如如何研究闭源的InfluxDB企业版,Gossip协议的使用场景。有些问题,学习完相关内容后,你应该能独立分析,比如,Raft对集群性能的限制,eureka、redis的一致性实现。在内容中找不到答案的问题,或者学习完内容后,大家仍无法举一反三独立分析的典型问题,我会以加餐篇的形式,详细说说。20节,是浓缩、反复打磨的最核心内容,后续会以加餐篇的形式,加入更多的内容,日常工作中会用到的,比如分布式事务、架构设计、工程实践、性能优化等。 授人以鱼不如授人以渔,生有涯知无涯,只有掌握了最核心的“道”,才能以不变应万变,突破性的解决系统痛点和打造业界领先的产品。 我们一同努力,加油!相信你一定会学有所成。
2020-02-10443 - Michael分布式算法和分布式事务之间有关系么?
作者回复: 加一颗星:),分布式算法是统称,实现分布式事务的算法,比如2pc,也属于分布式算法。
2020-05-1224 - a d e不管是架构设计,还是区块链相关技术,分布式算法是逃不过的,不如早点面对,拿下!!!
作者回复: “架构”不能只是开源软件堆砌,要贴合场景,从最最本质的技术核心出发,直面和解决痛点。加油!有疑问多留言、讨论。
2020-07-273 - kernel_distribution请问下老师, http://pages.cs.wisc.edu/~remzi/Classes/739/Fall2017/paxos.lecture.pdf 这个最后的Q2有什么问题么?
作者回复: 可能出现各节点的值不一致的情况。因为少数节点,可能只执行了Accept(n, value),也就是没有经过prepare阶段,如果此时,有小于n的提议者在之前得到大多数准备响应,现在在发起接受请求,尽管少数节点,已执行了Accept(n, value),因为没有设置minProposal,节点还是会重新接受这个低提案编号的提案,导致最终的值,被修改。
2020-02-233 - 蓝魔丶不再被各种算法名词术语打败,知晓它们之间的联系与区别,举一反三,加深分布式算法的理解,了解适用场景和常见误区。同时在阅读开源项目的源码时能够很快掌握其中使用的算法技巧,加深理解和思考,希望自己有朝一日也能重复造轮子,还能造更好的轮子
作者回复: 加油!创造出业界领先的轮子:)
2020-02-113 - Frank为了走的更远,分布式这块硬骨头得啃下来。希望借助作者分享的内容,自己能对分布式基本轮廓和重要的“公式定理”有一个准确清晰的理解。
作者回复: 加油!一定可以的。
2020-02-112 - 忆水寒原来只是对概念、一些名称很熟悉,对算法内容看着明白,但是讲不出来、讲不清楚。希望学完这个专栏,我能全局讲清楚每个算法的原理和过程,借助这些知识用于优化我们产品的系统、甚至开发分布式组件(因为我们也是分布式架构)。
作者回复: 加油!我们一同努力,一定可以的。
2020-02-102 - 奕理解分布式协议和算法,设计出更适合的出分布式系统
作者回复: 加油!你可以的。
2020-02-102 - InfoQ_8ae7d4823c56老师可以出一些实战的分布式课程,对于很少接触分布式的人来说,理论的听了之后还是理解的不太深刻
作者回复: 加一颗星:),感谢反馈,这个也是我常常在思考的,也在尝试,比如,我在启动对标InfluxDB企业版的开源分布式时序数据库,其中的一个初心,就是想在这个系统中注入更多新技术,也希望更多同学能在代码中理解技术。
2020-09-051