当前位置: 首页 > news >正文

go 是做网站的吗外贸推广方式

go 是做网站的吗,外贸推广方式,六安网站建设推广,哪些网站可以做爬虫实验讨论了1primary 1backup的情况,比较好理解, 6.824中以该论文为例,介绍了分布式系统中复制的概念,复制的方式。以下简要讲述一些关键点,来源于MIT6.824课程,翻译版本 https://mit-public-courses-cn-transl…

讨论了1primary + 1backup的情况,比较好理解, 6.824中以该论文为例,介绍了分布式系统中复制的概念,复制的方式。以下简要讲述一些关键点,来源于MIT6.824课程,翻译版本 https://mit-public-courses-cn-translatio.gitbook.io/mit6-824/lecture-04-vmware-ft

文章目录

  • 一、两种复制方法
  • 二、工作原理
  • 三、非确定性事件
  • 四、Log格式猜测
  • 五、防止脑裂的第三方机构:test-and-set服务

一、两种复制方法

  • 状态转移
  • 复制状态机

区别在于,状态转移转移的是系统内部信息,而复制状态机则是传输外部事件。一条执行语句可能会改变很多(甚至全部)内部状态(比如涉及到数据库中schema的改变),如果每次都转移内部状态,那涉及到的太多了。而传输执行指令的操作粒度则比较小。

人们倾向于使用复制状态机的原因是,通常来说,外部操作或者事件比服务的状态要小。如果是一个数据库的话,它的状态可能是整个数据库,可能到达GB这个级别,而操作只是一些客户端发起的请求,例如读key27的数据。所以操作通常来说比较小,而状态通常比较大。所以复制状态机通常来说更吸引人一些。复制状态机的缺点是,它会更复杂一些,并且对于计算机的运行做了更多的假设。而状态转移就比较简单粗暴,我就是将我整个状态发送给你,你不需要再考虑别的东西。

二、工作原理

VMware FT的FT = Fault tolerance。 想要实现错误容忍,那么就需要replication(防止一台机器挂掉了导致的状态丢失)

VMware FT需要两个服务器(在两台物理机上有两台虚拟机):primary和backup,VMM为每个虚拟机分配一段内存,它们的内存镜像需要完全一致。
客户端向primary发送指令, 然后primary会向backup也发送同样指令。primary和backup都会执行指令,生成response,但是只有primary会回复客户端,而backup会把response丢弃。VMware FT论文中将Primary到Backup之间同步的数据流的通道称之为Log Channel 。

正常来说是primary接收指令,然后通过log channel 将其传给backup。 如果backup在一个规定时间内无法收到primary的指令,可以认为是primary挂了/有问题了,此时Backup不会再等待来自于Primary的Log Channel的事件, backup此时不受primary事件驱动,同时告知客户端,后续的请求发往backup而不是primary, backup生成的response此时也不会直接丢弃,它成为了新的primary。

三、非确定性事件

可以理解为同一事件在不同机器上结果不同的事件。也是复制状态机方式需要考虑的特殊情况。

  1. 客户端输入
    在分布式系统中,这里的系统输入指的是网络数据包。一个网络数据包包括两个部分,一个是数据包中的数据,另一个是提示数据包到达的中断。
    中断在哪个位置触发,对于primary和backup来说需要一致,否则状态就会偏差。

  2. “怪异”指令:这些指令在不同机器上的执行结果不同
    比如随机数生成, 获取当前时间的指令,获得计算机唯一id指令

  3. 多CPU并发
    当服务运行在多CPU上时,指令在不同的CPU上会交织在一起运行,因此指令运行的顺序不可预期

假设两个核同时向同一份数据请求锁: 在primary上,CPU core1得到锁; 在backup上,由于细微的时间差别,CPU core2获得了锁,那么执行结果可能很不一样。

四、Log格式猜测

Robert教授猜测log (log channel 中传递的信息)中有三样东西:

  • 事件编号
  • 日志条目类型(普通的网络数据 or 怪异指令)
  • 数据(网络数据包内容,也就是普通指令的内容 or 怪异指令执行结果)

五、防止脑裂的第三方机构:test-and-set服务

网络分区导致脑裂问题的解决:需要有一个第三方的权威机构,决定primary还是backup允许上线,这就是test-and-set服务。

这个就像锁一样,该服务在内存中保留一些标志位,primary和backup需要向这个服务发送test-and-set请求。

当第一个请求送达时,Test-and-Set服务会说,这个标志位之前是0,现在是1。第二个请求送达时,Test-and-Set服务会说,标志位已经是1了,你不允许成为Primary。对于这个Test-and-Set服务,我们可以认为运行在单台服务器。当网络出现故障,并且两个副本都认为对方已经挂了时,Test-and-Set服务就是一个仲裁官,决定了两个副本中哪一个应该上线。

节点成为primary必须向这个第三方机构进行请求,得到许可(得到0)。
也就是test and set当前如果是0,那么该节点可以成为primary,成为primary后,将标志位设置为1; 如果当前标志位1,就不能再成为primary了。 本质上来说,这是一种简化了的锁服务,哪台机器拿到“锁”,哪台机器才能成为primary。

http://www.yidumall.com/news/10840.html

相关文章:

  • 广药网站建设试题在线一键生成网页
  • 江苏住房与城乡建设厅网站大学生网页设计主题
  • 佛山企业网站开发抖音关键词排名软件
  • 做网站设像素免费seo关键词优化排名
  • 网站域名备案系统云南网站建设百度
  • 做家居网站设计百度关键词价格排行榜
  • pc网站和app哪个容易做网络平台有哪些
  • php实验报告企业网站开发seo综合查询工具可以查看哪些数据
  • 凯里市企业建站公司山西太原网络推广
  • 怎样解析网站域名解析百度seo排名优化
  • 网站开发遇到的问题及解决方法seo自媒体培训
  • 织梦网站字体大小电商网站建设教程
  • 网站有哪些功能15个常见关键词
  • 用pdf怎么做电子书下载网站郑州热门网络推广免费咨询
  • 外国专门做魔兽世界邪恶补丁网站网站建设的意义和目的
  • 排版设计网站代理推广
  • 在网上做国际快递淘宝网站百度关键词搜索量查询
  • 上海360网站建设安卓aso
  • 青浦门户网站一站式海外推广平台
  • 开发一整个网站要多久小程序设计
  • 企业网站备案流程站长之家是干什么的
  • 细分网站关于网站推广
  • 龙岗义乌网站制作广州优化防控措施
  • 建筑类期刊排名seo优化个人博客
  • 网站建设 申请手机注册网站
  • 做网站制作的公司网页设计用什么软件做
  • 开发app的网站网络营销推广策划的步骤是什么
  • 开个网站建设公司多少钱网站推广入口
  • 做网站哪家好 要钱搜索关键词网站
  • 中国十大购物网站甘肃省seo关键词优化