操作系统中的分布式操作系统是基本的操作系统之一,下面由小编为大家整理了分布式操作系统的相关知识,希望对大家有帮助!
简介
它在资源管理,通信控制和操作系统的结构等方面都与其他操作系统有较大的区别。由于分布计算机系统的资源分布于系统的不同计算机上,操作系统对用户的资源需求不能像一般的操作系统那样等待有资源时直接分配的简单做法而是要在系统的各台计算机上搜索,找到所需资源后才可进行分配。对于有些资源,如具有多个副本的文件,还必须考虑一致性。所谓一致性是指若干个用户对同一个文件所同时读出的数据是一致的。为了保证一致性,操作系统须控制文件的读、写、操作,使得多个用户可同时读一个文件,而任一时刻最多只能有一个用户在修改文件。的通信功能类似于网络操作系统。由于分布计算机系统不像网络分布得很广,同时还要支持并行处理,因此它提供的通信机制和网络操作系统提供的有所不同,它要求通信速度高。的结构也不同于其他操作系统,它分布于系统的各台计算机上,能并行地处理用户的各种需求,有较强的容错能力。
分布式操作系统详解
定义:
组件分布在网络计算机上
组件之间仅仅通过消息传递来通信并协调行动
分布式系统的意义:
升级单机处理能力的性价比
根据摩尔定律来说,如果把时间固定下来,所需要的处理器性能越高,付出的成本就越高,性价比就越低。而且单机处理器始终有瓶颈
单机处理能力存在瓶颈
单机处理器的瓶颈只能通过多机来解决
稳定性和可用性
如果采用单机系统,如果这台机器一切正常,则一切ok,如果这台机器坏了。整个应用就访问不了了。如果要做容灾备份等方案,就需要考虑分布式系统了。
负载均衡
硬件负载均衡
如f5等,大多比较昂贵。
软件负载均衡
如lvs,nginx等。免费,可控性强
总结:
1:增加网络开销与延迟,不过基本上影响很小,可以不在考虑因素之内
2:负载均衡硬件/软件出现问题,那么整个网络都会受到影响,所以需要考虑代理服务器的双机热备问题。而且在切换过程中,未完成的请求还是会受到影响。总的来说,是一种非常方便及适用的保证高可用的一种方式。
采用名称服务的直联方式的请求调用
同样是完成一次请求调用,与上面f5/lvs等最大的区别在于请求发起方与请求处理方不经过代理服务器也没有代理服务器,他们双方是直接连接的,不过外部有一个【名称服务】的角色,它的作用是收集与提供请求处理的服务器的地址信息,起到的是一个地址交换的作用,原来在代理(lvs/f5)上做的工作被拆分到了名称服务和发起请求的机器上了。打个比方,就像以前的114一样,我们不知道A家的电话号码,可以打114查一下就知道了。这个名称服务就是起到了类似的作用。
采用规则服务器控制路由的请求调用
与名称服务的方式很像,只是采用了规则服务器替换名称服务。也一样是直联而不用通过代理服务器。这里的区别主要是规则服务器本身不和请求处理的机器进行交互,只负责把规则提供给发起请求的服务器。
总结:
1.假如这个名称服务/规则服务器暂时坏掉了,我们也有不少的办法可以保证请求的正常处理。
2.发起请求方与处理请求方是直连的方式,减少了中间路径及带宽的消耗。
3.代码升级较复杂
【#分布操作系统#】到此分享完毕,希望对大家有所帮助。