@@ -95,6 +95,9 @@ type Controller struct {
95
95
96
96
podOnNodeManageQueue queue.Queue [string ]
97
97
nodeManageQueue queue.Queue [string ]
98
+
99
+ podOnNodeManageQueueParallelism * queue.AdaptiveQueue [string ]
100
+ nodeManageQueueParallelism * queue.AdaptiveQueue [string ]
98
101
}
99
102
100
103
// Config is the configuration for the controller
@@ -295,6 +298,7 @@ func (c *Controller) initNodeLeaseController(ctx context.Context) error {
295
298
c .nodeLeases .ReleaseHold (nodeName )
296
299
}
297
300
301
+ c .nodeManageQueueParallelism = queue .NewAdaptiveQueue (ctx , c .nodeManageQueue , c .nodeLeaseSyncWorker )
298
302
go c .nodeLeaseSyncWorker (ctx )
299
303
300
304
err = c .nodeLeases .Start (ctx )
@@ -307,7 +311,7 @@ func (c *Controller) initNodeLeaseController(ctx context.Context) error {
307
311
func (c * Controller ) nodeLeaseSyncWorker (ctx context.Context ) {
308
312
logger := log .FromContext (ctx )
309
313
for ctx .Err () == nil {
310
- nodeName , ok := c .nodeManageQueue .GetOrWaitWithDone (ctx .Done ())
314
+ nodeName , ok := c .nodeManageQueueParallelism .GetOrWaitWithDone (ctx .Done ())
311
315
if ! ok {
312
316
return
313
317
}
@@ -339,6 +343,7 @@ func (c *Controller) startStageController(ctx context.Context, ref internalversi
339
343
return fmt .Errorf ("failed to init pod controller: %w" , err )
340
344
}
341
345
346
+ c .podOnNodeManageQueueParallelism = queue .NewAdaptiveQueue (ctx , c .podOnNodeManageQueue , c .podsOnNodeSyncWorker )
342
347
go c .podsOnNodeSyncWorker (ctx )
343
348
344
349
case nodeRef :
@@ -559,7 +564,7 @@ func (c *Controller) Start(ctx context.Context) error {
559
564
func (c * Controller ) podsOnNodeSyncWorker (ctx context.Context ) {
560
565
logger := log .FromContext (ctx )
561
566
for ctx .Err () == nil {
562
- nodeName , ok := c .podOnNodeManageQueue .GetOrWaitWithDone (ctx .Done ())
567
+ nodeName , ok := c .podOnNodeManageQueueParallelism .GetOrWaitWithDone (ctx .Done ())
563
568
if ! ok {
564
569
return
565
570
}
0 commit comments