Autoscaling Controller  ·  View 20 of 37  ·  4 · Runtime

Policy Evaluation and Combination

Three policy forms plus a forecast, one proposed number, then the clamps.

Editable source SVG draw.io All views
Active policies Target Tracking hold a setpoint Step / Threshold steps per band Scheduled floor or ceiling Forecast Floor independent floor Each proposes Proposed Capacity integer per policy Arithmetic Recorded shown, not implied Combine Scale-Out: Maximum one may raise Scale-In: Minimum Agreed none may lower alone Clamp Target [min, max] Fleet Ceiling serve, do not grow Spend Ceiling per region Declare Desired Capacity Dry-Run Target journalled, not applied raises only reached: hold Policy Evaluation and Combination Application we own Data store Decision point Security / platform Risk / gap synchronous failure / alternate A forecast enters as a floor, never as a bias on the reactive loop. A wrong forecast then costs money, not an outage. v 1.0 · owner Data & AI Global Practice · date 2026-09

Decisions

  • Maximum on scale-out, minimum agreed on scale-in. One policy may raise capacity; none may lower it alone.
  • A forecast enters as an independent capacity floor the reactive loop may exceed but not undercut, never as a bias on the reactive arithmetic.
  • Clamps are applied last and recorded as adjustments, so a target pinned at max is visible as a clamp rather than as a coincidence.

Reactive, predictive, or both

  • Both, but joined as a floor rather than a blend. A wrong forecast then costs money; a wrong blend would cost an outage.
  • Purely reactive cannot beat a cold-start budget on a step change, which is the whole argument for a predictive component.
  • Forecast error is bounded by the floor never exceeding the target's declared maximum and never suppressing a reactive scale-out.

Dry run

  • Per-target dry run computes and journals decisions without actuating, which is how a new policy earns its way onto a real target.