- private weightedRoundRobinNextWorkerNodeKey (): void {
- const workerVirtualTaskRunTime = this.workerVirtualTaskRunTime
- const workerWeight =
- this.opts.weights?.[this.nextWorkerNodeKey] ?? this.defaultWorkerWeight
- if (workerVirtualTaskRunTime < workerWeight) {
- this.workerVirtualTaskRunTime =
- workerVirtualTaskRunTime +
- this.getWorkerTaskRunTime(this.nextWorkerNodeKey)
+ private weightedRoundRobinNextWorkerNodeKey (): number | undefined {
+ const workerWeight = this.opts.weights?.[
+ this.nextWorkerNodeKey ?? this.previousWorkerNodeKey
+ ] as number
+ if (this.workerNodeVirtualTaskRunTime < workerWeight) {
+ this.workerNodeVirtualTaskRunTime =
+ this.workerNodeVirtualTaskRunTime +
+ this.getWorkerNodeTaskRunTime(
+ this.nextWorkerNodeKey ?? this.previousWorkerNodeKey
+ )