- this.previousWorkerNodeKey = workerNodeKey ?? this.previousWorkerNodeKey
- }
-
- /**
- * Check the next worker node eligibility.
- *
- * @param previousWorkerNodeKey - The previous worker node key.
- */
- protected checkNextWorkerNodeEligibility (
- previousWorkerNodeKey: number | undefined
- ): void {
- if (!this.isWorkerNodeEligible(this.nextWorkerNodeKey as number)) {
- this.nextWorkerNodeKey = undefined
- this.setPreviousWorkerNodeKey(previousWorkerNodeKey)
- }
- }
-
- protected computeDefaultWorkerWeight (): number {
- let cpusCycleTimeWeight = 0
- for (const cpu of cpus()) {
- // CPU estimated cycle time
- const numberOfDigits = cpu.speed.toString().length - 1
- const cpuCycleTime = 1 / (cpu.speed / Math.pow(10, numberOfDigits))
- cpusCycleTimeWeight += cpuCycleTime * Math.pow(10, numberOfDigits)
- }
- return Math.round(cpusCycleTimeWeight / cpus().length)
+ this.previousWorkerNodeKey =
+ workerNodeKey != null && workerNodeKey >= 0
+ ? workerNodeKey
+ : this.previousWorkerNodeKey