ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

一致性协调服务pasox

2021-07-22 01:02:52  阅读:187  来源: 互联网

标签:协议 操作系统 协调 pasox 分布式系统 一致性 分布式


怎么说呢,市面上介绍pasox协议的资料都不是给小白准备的,甚至不是给具备一定计算计算机基础的同学准备的。

比如这篇佳作:https://weibo.com/ttarticle/p/show?id=2309404510981786042616,也没有让人一下子看了之后顿悟,而是要结合诸多其他的信息才能理解。

这些文章一般不交待一些前置条件都,比如,数据是每台server上都是要存储的,因为普通人的认知里,都会认为一份数据并不是要在每台server上都存储的,一般是三副本,并不是全副本。但是pasox协议说的完全不是这件事情,pasox协议是一个高度抽象的协议,他讲的是一个分布式集群中各个节点是如何做到一致性。

好了又被绕晕了,分布式集群中,如何做到一致性(这句话在各种介绍zk的文章中出现无数遍了)。

搞分布式的同学,一般见识过的集群都是1000台机器,10000台机器的规模,上面部署的组件真是很多,比如分布式调度系统,hadoop,分布式存储系统,hdfs。

那这些系统的开发人员,好像也没怎么见着要做好分布式一致性的事情呢。拿yarn来举例子,ResourceManager和NodeManager好像也不涉及到什么一致性的问题,大家就那样去开发了,上报资源,然后把作业调度到这台机器上。其实,很多分布式系统组件,对一致性的依赖没有那么强烈,不用谈分布式色变,感觉一致性被刻入到分布式系统的每寸肌肤当中。

那么pasox协议到底是解决的什么问题呢?是为了解决分布式系统中的一致性问题,是的,这里又来了一遍,分布式系统中的一致性的问题。

其实不难想象,在单台服务器上,一个进程的多个线程之间共享资源是通过锁机制来实现的,那么在分布式系统中,一个“进程”的多个“线程”可能是分布在不同的机器上的,这个时候如何完成这个锁机制?每个“进程”其实都可以提供自己的锁服务,但是就传统操作系统的设计经验,此类锁服务其实应该下沉到操作系统来完成的,上层应用调用接口就好。那么在云操作系统中,就应该有这样一个角色来提供锁的服务了。锁,其实就是一致性的一部分。

pasox协议不是用来专门处理分布式锁的,锁只是其中的一个应用,pasox解决的事情在不同节点间的数据一致性的问题,对操作系统比较熟悉的同学应该一下子就能在这里关联起:数据的一致性和锁。linux内核中的自旋锁难道不就是在某一个核上不断地去检查一个数据是否变化吗。所以数据的一致性是实现锁的基础

有了这些内容,再去看pasox协议就能比较畅快了。

pasox协议是说,独立的几台机器,比如5台,3台专门组成了一个锁集群,专门去提供锁服务的事情,这是个大前提。

 

标签:协议,操作系统,协调,pasox,分布式系统,一致性,分布式
来源: https://www.cnblogs.com/honpey/p/15042263.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有