云原生自动伸缩与事件处理技术解析
1. 自动伸缩基础
自动伸缩说起来容易做起来难,尤其是从零开始伸缩时,问题会变得更加复杂。当实例数量为零时,流量由激活器(Activator)处理。一旦有流量到来且实例数量为零,激活器会触发自动伸缩器,使其将实例数量提升到零以上。在实例准备好之前,流量会被激活器暂存。
在设置自动伸缩参数时,若将稳定窗口设置为异常高或低的值,才需要调整恐慌窗口百分比。例如,若稳定窗口为一小时,可将恐慌窗口设置为 1%,这样自动伸缩器能在 36 秒内进入恐慌模式,而非 6 分钟。反之,若将稳定窗口降低到 20 秒,则可将恐慌窗口百分比提高到 25% 左右,因为 2 秒的数据量过少,可能会导致误判。
2. 恐慌阈值设置
恐慌阈值是控制恐慌行为的另一个重要参数。虽然可以使用 panic-threshold-percentage 全局设置该参数,但通常不建议这样做。不过,对于个别服务或配置,可以使用 /panicThresholdPercentage 注解进行调整。
对于有价值的工作负载,可以降低该阈值,这样即使有多个实例在运行,仍可能触发恐慌模式。虽然这会导致实例的更替更加频繁,但在某些情况下是可以接受的。而对于需求可预测且能等待的工作负载,则可以将阈值提高,以减少恐慌模式的发生。
3. 目标突发容量设置
目标突发容量(TBC)子系统主要用于确定激活器何时留在数据路径中或退出。可以使用 target-burst-capacity 全局设置该参数,也可以在服务或配置中使用 /targ
超级会员免费看
订阅专栏 解锁全文
3997

被折叠的 条评论
为什么被折叠?



