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: docs/man/renderd.conf.5
+15Lines changed: 15 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -44,6 +44,19 @@ Specify the number of threads to be used for \fBrenderd\fR.
44
44
A value of \fB'-1'\fR will configure \fBnum_threads\fR to the number of cores on the system.
45
45
The default value is \fB'4'\fR (macro definition \fB'NUM_THREADS'\fR).
46
46
47
+
.TP
48
+
.Brequest_queue_limit
49
+
Specify the maximum number of requests kept in each time-critical request queue: priority, normal, low priority, and bulk.
50
+
When one of these queues is full, new requests overflow into the dirty queue if space is available.
51
+
The default value is \fB'256'\fR when metatiles are enabled, or \fB'512'\fR without metatiles (macro definition \fB'DEFAULT_REQUEST_QUEUE_LIMIT'\fR).
52
+
53
+
.TP
54
+
.Bdirty_queue_limit
55
+
Specify the maximum number of requests kept in the dirty queue.
56
+
The dirty queue is the background queue for expired or overflowed tiles where no client is waiting for the response.
57
+
Larger values can preserve more expired work for quiet periods, but they can also increase memory use and make it easier for important overflowed tiles to sit behind lower-priority background work.
58
+
The default value is \fB'8000'\fR when metatiles are enabled, or \fB'10000'\fR without metatiles (macro definition \fB'DEFAULT_DIRTY_QUEUE_LIMIT'\fR).
59
+
47
60
.TP
48
61
.Bpid_file
49
62
Specify the file path into which the PID will be written by \fBrenderd\fR.
@@ -189,6 +202,8 @@ Only used by \fBrenderd\fR.
189
202
190
203
.SH SEE ALSO
191
204
.BR renderd(1)
205
+
.PP
206
+
See \fBdocs/renderd-queue-tuning.md\fR in the source tree for queue tuning and rollout guidance.
if (configs_dest[renderd_section_num].request_queue_limit<1) {
442
+
g_logger(G_LOG_LEVEL_CRITICAL, "Specified request_queue_limit (%i) is too small, must be greater than or equal to %i.", configs_dest[renderd_section_num].request_queue_limit, 1);
443
+
exit(7);
444
+
}
445
+
446
+
if (configs_dest[renderd_section_num].dirty_queue_limit<0) {
447
+
g_logger(G_LOG_LEVEL_CRITICAL, "Specified dirty_queue_limit (%i) is too small, must be greater than or equal to %i.", configs_dest[renderd_section_num].dirty_queue_limit, 0);
448
+
exit(7);
449
+
}
450
+
439
451
if (strnlen(configs_dest[renderd_section_num].socketname, PATH_MAX) >= renderd_socketname_maxlen) {
440
452
g_logger(G_LOG_LEVEL_CRITICAL, "Specified socketname (%s) exceeds maximum allowed length of %i.", configs_dest[renderd_section_num].socketname, renderd_socketname_maxlen);
441
453
exit(7);
@@ -510,6 +522,8 @@ void process_config_file(const char *config_file_name, int active_renderd_sectio
510
522
}
511
523
512
524
g_logger(G_LOG_LEVEL_DEBUG, "\trenderd(%i): num_threads = '%i'", i, config_slaves[i].num_threads);
525
+
g_logger(G_LOG_LEVEL_DEBUG, "\trenderd(%i): request_queue_limit = '%i'", i, config_slaves[i].request_queue_limit);
526
+
g_logger(G_LOG_LEVEL_DEBUG, "\trenderd(%i): dirty_queue_limit = '%i'", i, config_slaves[i].dirty_queue_limit);
513
527
g_logger(G_LOG_LEVEL_DEBUG, "\trenderd(%i): pid_file = '%s'", i, config_slaves[i].pid_filename);
514
528
515
529
if (strnlen(config_slaves[i].stats_filename, PATH_MAX)) {
@@ -526,6 +540,8 @@ void process_config_file(const char *config_file_name, int active_renderd_sectio
0 commit comments