分布式调度(集群对集群、软负载)

本文介绍了分布式调度的概念,强调集群对集群的通讯模式,重点阐述了软负载的策略,包括服务分组、路由规则、同机房规则、阈值控制、权重规则等。此外,还提及了一致性策略BASE定理,讨论了如何在分布式环境中平衡可用性和一致性。
摘要由CSDN通过智能技术生成

分布式调度(集群对集群、软负载)

分布式的通讯不是P2P,而是集群对集群。

服务提供者是一个集群,集群中的每个机器都具备提供服务的能力。
不会因为一个机器宕机而使得服务失效。(冗余高可用
服务使用者也是一个集群。
所以在服务的调度上,就会有许多的挑战。

注册中心:注册中心维护着服务的分发。

两个个体可以直接交流,但是两个群体就需要中介介入。
服务提供者将自己拥有的服务和提供服务的具体机器(地址、端口)告诉中介。
服务使用者找到中介订阅服务并获取提供服务的具体机器信息(地址列表),进而请求、调用。

配置中心

动态的推送节点的配置信息,方便管理和使用。

加载隔离、模块化

容器的类加载器和隔离中间件的类加载器互相持有。
提供编译依赖,确定依赖引入导出优先级。
容器和隔离中间件的类加载器都互相优先加载对方的依赖配置。

软负载

在分布式场景进行服务调度的过程中,会面临许多场景,调度方式也需要随着场景而变化。实际上,也就是资源的有效划分合理安排

分组:区别对待,VPI客户服务优先供给。

两个服务使用者同时依赖一个服务提供者,其中一个服务(更重要)需求远大于另一个的时候,我们需要让服务提供者的资源得到合理的分配,可以采用分组的方式,将较好的、较多的机器分为一组,余下的分为另外一组,进而告知服务调用方分别调用不同组别内机器提供的服务。借助分组,对服务资源进行划分,进而在服务资源供给中因人而异,区别对待

路由规则:规则配置化。

通过配置将某些客户端流量导入到某些机器上。
路由配置的粒度划分到方法参数。比如:写操作分配到实体机,读操作分配到虚拟机。
同时,有一定的保护机制,即:当规则匹配不到的时候转全量调用,避免人为配置错误导致调用无效。

同机房规则:就近调度。

在阈值范围内,客户端优先调用同机房的服务端。
虚拟机房是对实体机器的划分。同空间下(同机房)划分到同一个虚拟机房。
ip前两段的方式也可以作为同机房的判别,前提是同机房的ip前两段相同。

阈值:防止过度使用。

同机房的机器优先调用的同时存在一个隐患,就是优先调用同机房机器的度的问题。
当同机房内的机器有宕机的情况发生,依然优先调用,会导致负载过高,有安全隐患。
所以,设定阈值,同机房机器数/总机器数=p,当p低于阈值的时候转为随机调用。

权重规则:提高某些机器被调用率。

(1+n)/(m+n) 如果服务调度分发机制是在地址列表中随机分发的,那么在地址列表中添加该机器的ip个数,就是增加其被调用的概率。

主动异步调用

服务使用者调用服务,然后去do other things.
服务提供者完成服务并反馈。

回调

由服务提供方负责call back.

线程池

有任务队列,且主动将任务队列中的任务推送给线程。
线程复用的时间设定。
日志打印。

通讯

一致性策略:BASE定理

Base?
  • BASE其实是下面三个术语的缩写:
    ​1. 基本可用(Basically Available)
    ​2. 软状态(Soft state)
    ​3. 最终一致(Eventually consistent)
产生背景:
  • 由于大型系统往往由于地域分布和极高性能的要求,不可能采用分布式事务来完成相关指标,要想获得相关指标,必须采用另外一种方式来完成。BASE就是为了解决关系数据库强一致性面临的问题而提出的解决方案。
核心思想:让系统在紧张的时刻适当放松下,延缓一致。
  • 让系统对某一时刻放松下,通过降低数据一致性的要求来换取系统整体伸缩性和性能上改观。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值