限流该怎么做 限流的核心在于:能“限”在被限制对象的能力上限附近。简单来说就是,设定的阈值要接近被限制对象的能力。一方面,如果阈值过高,限流形同虚设,达不到相应的效果;另一方面,如果阈值过低,频繁触发干预,就会造成误伤。最终都会导致很差的用户体验。因此: 首先,要明确限流对象 然后,要获得被限制对象的能力上限 其次,要制定干预流量的策略 最后,就是限流方案的选择与实现 一、确定限流对象 大体 2020-12-06 系统容量 #限流
浅谈常用限流策略 在实际的应用场景中,常用的限流策略可以概括为一个词:两窗两桶。其中,两窗是指固定窗口和滑动窗口;两桶是指漏桶和令牌桶。 一、固定窗口 固定窗口,是指设定一个固定的统计周期(比如,30秒或1分钟),然后通过累加计数器对每个周期内的流量进行统计。在一个周期内,如果流量达到了设定的阈值,就进行流量干预,直到进入下一个统计周期,计数器清零,流量接收恢复正常。该策略可以用如下示意图来理解: 二、滑动窗口 2020-12-06 系统容量 #限流策略
作业调度5:GPU管理与Device Plugin机制 todo 一、从人工智能说起 2016 年,随着 AlphaGo 的走红和 TensorFlow 项目的异军突起,一场名为 AI 的技术革命迅速从学术界蔓延到了工业界,所谓的 AI 元年,就此拉开帷幕。 当然,机器学习或者说人工智能,并不是什么新鲜的概念。而这次热潮的背后,云计算服务的普及与成熟,以及算力的巨大提升,其实正是将人工智能从象牙塔带到工业界的一个重要推手。 而与之相对应的,从 2016 2020-10-13 容器 #Kubernetes
作业调度4:Kubernetes默认调度器的优先级与抢占机制 在前面的文章中,我们讨论了Kubernetes默认调度器的主要调度算法的工作原理。接下来,我们来看一下Kubernetes默认调度器的另一个重要机制:优先级(Priority)和抢占机制(Preemption)。 一、从Pod调度失败说起 首先需要明确的是,优先级和抢占机制,解决的是 Pod 调度失败时该怎么办的问题。 正常情况下,当一个 Pod 调度失败后,它就会被暂时“搁置”起来,直到 Pod 2020-10-13 容器 #Kubernetes
作业调度3:Kubernetes默认调度器的调度策略 在前面的文章中,我们讨论了Kubernete默认调度器的设计以及走向。接下来,我们重点讨论Predicates和Priorities这两个重要的调度过程。 一、理解Predicates的工作原理 首先,我们一起看看 Predicates。 Predicates 在调度过程中的作用,可以理解为 Filter,即:它按照调度策略,从当前集群的所有节点中,“过滤”出一系列符合条件的节点。这些节点,都是可 2020-10-13 容器 #Kubernetes
作业调度2:Kubernetes的默认调度器 在前面的文章中,我们主要讨论了 Kubernetes 里关于资源模型的设计。接下来,我们来讨论一下 Kubernetes 的默认调度器(default scheduler)。 一、默认调度器的设计 1.1、从默认调度器的职责说起 在 Kubernetes 项目中,默认调度器的主要职责,就是为一个新创建出来的 Pod,寻找一个最合适的节点(Node)。而这里“最合适”的含义,包括两层: 从集群所有 2020-10-13 容器 #作业调度
作业调度1:Kubernetes的资源模型 作为一个编排与管理容器集群的项目,Kubernetes 为用户提供的基础设施能力,不仅包括了对应用的定义和描述,还包括了对应用的资源管理和调度。接下来,我们重点讨论后面这部分内容。 一、从Kubernetes的资源模型说起 1.1、两种资源类型 我们知道,在 Kubernetes 里,Pod 是最小的原子调度单位。这也就意味着,所有跟调度和资源管理相关的属性都应该属于 Pod 对象的字段。而这其中 2020-10-13 容器 #作业调度
GoReplay入门 随着应用功能的不断增加,测试它所需的工作量也会成倍增加。GoReplay则为我们提供了一个简单而快速的测试方法,即重用现有流量进行测试。它能够记录和分析应用程序的流量,且不会对应用程序造成影响。 一、简介 GoReplay,又称Gor,是一个采用Golang编写的、开源的HTTP实时流量捕获和重放工具。通过它可以完成流量复制、负载测试、流量监控和流量分析等工作。它以守护进程(而不是Proxy)的形 2020-10-10 流量复制 #Gor
怎样制定一份科学的跑步方案? todo 一、体脂率(跑步训练的启动指标) 1.1、什么是体脂率 体脂率是指体内的脂肪占体重总数的百分比。 比如,男性的体脂率高于26%就属于肥胖,如果能维持在14%左右就可以在腹部看到肌肉。女性的体脂率高于32%就属于肥胖,如果能维持在23%左右就能看到肌肉线条。 1.2、体脂率的作用 体脂率不仅是判断身体是否肥胖的参考指标,而且还是能否开始跑步的参考指标。当男性的体脂率低于26%、女性的体脂率 2020-10-08 精力管理 #跑步
容器网络8:Service与Ingress 在前面的文章中,我们讨论了将Service 暴露给外界的三种方法。接下来,我们重点讨论另外一种方法:Ingreess。 一、什么是Ingress 在将 Service 暴露给外界的三种方法。其中有一个叫作 LoadBalancer 类型的 Service,它会为我们在 Cloud Provider(比如:Google Cloud 或者 OpenStack)里创建一个与该 Service 对应的负载 2020-10-07 容器 #Kubernetes