You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: web/platform/src/content/docs/docs/config/production-config.mdx
+54Lines changed: 54 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -453,3 +453,57 @@ Here is the final CAS Config JSON without the 99 extra shards for writing to S3.
453
453
]
454
454
}
455
455
```
456
+
457
+
458
+
## Speed Up NativeLink by Turning Off a Hidden Redis Query
459
+
460
+
If you're running NativeLink at scale and noticing Redis performance bottlenecks, there's a configuration option that can significantly reduce load on your Redis scheduler: disabling the worker match logging interval.
461
+
462
+
### What's Happening
463
+
464
+
NativeLink has a feature that logs worker matching info every 10 seconds by default. It tells you things like "worker busy" or "can't find any worker" - useful for debugging, but there's a cost.
465
+
466
+
Every time this runs, it fires off a wildcard query to Redis. These queries aren't cheap. When you've got hundreds of builds running at once, they stack up and start slowing things down.
467
+
468
+
### The Fix
469
+
470
+
Add one line to your scheduler config:
471
+
472
+
```json
473
+
worker_match_logging_interval_s: -1
474
+
```
475
+
476
+
```json
477
+
schedulers: [
478
+
{
479
+
name: "MAIN_SCHEDULER",
480
+
simple: {
481
+
worker_match_logging_interval_s: -1,
482
+
supported_platform_properties: {
483
+
cpu_count: "minimum",
484
+
memory_kb: "minimum",
485
+
// ... your other properties
486
+
},
487
+
},
488
+
},
489
+
],
490
+
```
491
+
492
+
Setting it to `-1` turns off the logging entirely.
493
+
494
+
### Should You Do This?
495
+
496
+
**Yes, if you're seeing:**
497
+
- Redis connections getting maxed out
498
+
- Builds stalling under heavy load
499
+
- Scheduler feeling sluggish during busy periods
500
+
501
+
**Maybe not, if you're:**
502
+
- Running a smaller setup
503
+
- Actively debugging worker assignment issues
504
+
- Still tuning your deployment
505
+
506
+
### What You Lose
507
+
508
+
You won't see those worker matching logs anymore. If you need to debug why actions aren't getting assigned to workers, you'll have to turn this back on temporarily or look at other metrics.
509
+
For most production setups at scale, that's a fair trade-off for better Redis performance.
0 commit comments