Research Article

Automatic Scaling Mechanism of Intermodal EDI System under Green Cloud Computing

Algorithm 2

XEDI’s automatic shrinkage algorithm.
name: autoScalingDown
input: C: XEDI performance context;
output: none
 //If the XEDI resource occupancy rate is low, it will not shrink, reducing the number of
 //unnecessary shrinkages
 if () { terminate scaling-down;}
 //Get all the POD sets for XEDI
 retrieve all pods of XEDI from K8S as collection<POD>;
 for (POD pod: collection<POD>) {
  retrieve pod. C;
  //Avoid frequent POD scaling by cooling-off time
  if (currentTime-pod. lastScalingTime < pod. C. ) {
   enter next loop;
  }
  /Calculate POD expansion index/
  If (scalingStrategy == 0) {
   //According to formulas (2) and (3), qi = 1, the response capacity expansion index based
   //on mixed load rate was calculated
   ;
  } else {
   //According to formulas (5)–(7), the predictive expansion index was calculated
   ;
  }
  //Adjust pods with lower load rates
  if (() {
   //Reduce the number of copies of POD according to the flex index
   pod. replicas = I;
   //Refresh the POD’s copy number configuration so that the POD’s shrinkage takes effect
   refresh pod replication for K8S with XTuning. Scheduler;
  }
  //Stop shrinking when the resource utilization rate falls below the resource load rate
  if () { terminate scaling-down;}
}