go分布式强化与raft算法

go分布式强化与raft算法
共54节 192人在学 课程详情
  • mapreduce与任务系统

    • day12复习
    • mapReduce多任务测试与分析
    • mapReduce最终结果文件合并
    • master与worker通信分析
    • master RPC实现分析
    • worker注册与信息传递实现
    • 调度函数实现(1)
    • 调度函数实现(2)
    • worker结构与DoTask实现
    • worker注册与清理实现
    • 测试代码编写
    • mapReduce作业布置与源lab说明
  • raft算法实战

    • raft基本介绍之选举原理
    • raft动图详解
    • raft论文分析(1)
    • raft论文分析(2)
    • raft lab分析
    • raft基本结构实现
    • raft 结构属性初始化函数实现
    • 选举启动与投票相关结构参数分析
    • 发起投票选举函数实现(1)
    • 选举投票实现
    • 发起心跳机制
    • 处理投票请求实现与选举测试
    • 日志复制分析之Raft结构修改
    • 重置nextindex与matchindex操作
    • 实现client到leader的命令提交
    • 实现日志复制的请求与响应结构
    • 发起日志复制请求逻辑实现(1)
  • raft与分布式一致性

    • day14复习
    • raft日志复制响应处理实现
    • raft日志复制之编号冲突处理(1)
    • raft日志复制之编号冲突处理(2)
    • raft日志应用逻辑处理
    • raft日志复制请求处理逻辑分析
    • raft日志复制请求处理实现(1)
    • raft日志复制请求处理实现(2)
    • raft日志复制commitIndex索引更新函数实现
    • 日志复制一致性协议bug调试
    • 日志复制一致性协议bug说明与修正
    • raft一致性状态持久化操作实现
    • go语言后端开发面试分析
    • redis常见问题分析
    • redis高级
    • mysql常见问题(1)
  • mysql与一致性

    • day15复习
    • mysql事务说明
    • mysql分片说明
    • mysql锁机制说明
    • 常见缓存淘汰策略
    • 一致性哈希原理说明
    • CAP与BASE简述
    • 分布式事务与分布式锁

    订阅失败

    go分布式强化与raft算法
    go分布式强化与raft算法 ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    播放页问题反馈
    视频学习中有任何产品建议都可由此反
    馈,我们将及时处理!

    课时介绍

    Ga.3.13 go语言后端开发面试分析

    课程介绍

    分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,zui后把这些计算结果综合起来得到zui终的结果。分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。

     

    分布式计算与互联网的普及

    随着计算机的普及,个人电脑开始进入千家万户。与之伴随产生的是电脑的利用问题。越来越多的电脑处于闲置状态,即使在开机状态下CPU的潜力也远远不能被完全利用。我们可以想象,一台家用的计算机将大多数的时间花费在“等待”上面。即便是使用者实际使用他们的计算机时,处理器依然是寂静的消费,依然是不计其数的等待(等待输入,但实际上并没有做什么)。互联网的出现, 使得连接调用所有这些拥有闲置计算资源的计算机系统成为了现实。

     

     

    分布式计算项目

    那么,一些本身非常复杂的但是却很适合于划分为大量的更小的计算片断的问题被提出来,然后由某个研究机构通过大量艰辛的工作开发出计算用服务端和客户端。服务端负责将计算问题分成许多小的计算部分,然后把这些部分分配给许多联网参与计算的计算机进行并行处理,zui后将这些计算结果综合起来得到zui终的结果。

     

    当然,这看起来也似乎很原始、很困难,但是随着参与者和参与计算的计算机的数量的不断增加, 计算计划变得非常迅速,而且被实践证明是的确可行的。一些较大的分布式计算项目的处理能力已经可以达到甚而超过世界上速度zui快的巨型计算机。

     

    您也可以选择参加某些项目以捐赠的 CPU内核处理时间,您将发现您所提供的 CPU 内核处理时间将出现在项目的贡献统计中。您可以和其他的参与者竞争贡献时间的排名,您也可以加入一个已经存在的计算团体或者自己组建一个计算小组。这种方法很利于调动参与者的热情。

     

     

    参与计算

    随着民间的组队逐渐增多, 许多大型组织(例如公司、学校和各种各样的网站)也开始了组建自己的战队。同时,也形成了大量的以分布式计算技术和项目讨论为主题的社区,这些社区多数是翻译制作分布式计算项目的使用教程及发布相关技术性文章,并提供必要的技术支持。

     

    那么谁可能加入到这些项目中来呢? 当然是任何人都可以! 如果您已经加入了某个项目,而且曾经考虑加入计算小组, 您将在中国分布式计算总站及论坛里找到您的家。任何人都能加入任何由我站的组建的分布式计算小组。希望您在中国分布式总站及论坛里发现乐趣。

     

    参与分布式计算——一种能充分发挥您的个人电脑的利用价值的zui有意义的选择——只需要下载有关程序,然后这个程序会以zui低的优先度在计算机上运行,这对平时正常使用计算机几乎没有影响。如果你想利用计算机的空余时间做点有益的事情,还犹豫什么?马上行动起来吧,你的微不足道的付出或许就能使你在人类科学的发展史上留下不小的一笔呢。

     

    raft算法之所以容易理解,其一是他将一致性问题划分成几个子问题,这几个子问题都是独立、可理解和解释的。从传统的思维来讲,对于一个复杂的系统或者工程,都是大化小,分解实现,然后去尝试融合解决整体逻辑。包括CS系统的设计也是如此。

     

    一致性算法的目标

     

    1.安全性:在非拜占庭错误情况下,包括网络延迟、分区、丢包、冗余和乱序等错误都可以保证正确。

    2.可用性:只要集群中大多数节点处于runing,并且不分区,和客户端能通信,那么我们需要保证这个集群可用。

    3.对于数据同步,小部分慢节点的不会影响系统性能。因为对于日志复制,我们如果等待所有节点响应,那么系统的性能会存在短板效应。

     

    说白了,就是如果一个集群中,如果大多数节点可用(网络、服务),那么通过raft算法,我们就能保证整个系统可用(可处理请求,数据一致性)。后面我们主要研究的就是raft是如何做到的。

    首先我们要知道,Raft算法将其问题划分为

     

    领导选举

     

    日志复制

     

    安全性

     

    对于一个集群只有一个leader(领导),那么我们就很容易理解。只要领导操作同步到对应的followers(跟随者),数据必然一致。当leader宕机,需要进行领导选举。

     

    日志复制其实就是同步操作数据的过程。leader将操作日志同步到其他节点。

    安全性:如何安全的同步,在不同的情况,我们都能保证一致性,这也就是安全性需要考虑的问题。

     

    其实就是如此,raft首先假设了领导选举。然后实现了日志复制,zui后在安全问题上解决上面的漏洞问题。

     

    推荐课程

    信息系统项目管理师自考笔记

    李明 · 730人在学

    python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

    王先生 · 22120人在学

    手把手搭建Java超市管理系统【附源码】(毕设)

    汤小洋 · 4210人在学

    Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

    黄菊华 · 788人在学

    基于SSM酒店管理系统(毕设)

    小尼老师 · 842人在学

    java项目实战之购物商城(java毕业设计)

    Long · 5155人在学

    手把手搭建Java求职招聘系统【附源码】(毕设)

    汤小洋 · 1506人在学

    Python Django 深度学习 小程序

    钟翔 · 2324人在学

    城管局门前三包管理系统+微信小程序(vue+springboot)

    赖国荣 · 599人在学

    Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

    李杰 · 3987人在学

    正在试验
    后自动删除环境
    课程实验
    本次实验时间已到期 00:00:00
    课件正在飞速打包中,请耐心等待几秒钟~