From f73f4535c157f3617d15dc9b81af7dd204e58341 Mon Sep 17 00:00:00 2001 From: Jerry Zhao Date: Thu, 30 Jul 2026 00:33:55 +0000 Subject: [PATCH] Expose EloqStore IO QoS configuration --- eloqkv.ini | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/eloqkv.ini b/eloqkv.ini index 8c634cfa..60f0d8ac 100644 --- a/eloqkv.ini +++ b/eloqkv.ini @@ -130,9 +130,6 @@ node_group_replica_num = 1 # eloq_store_max_inflight_write: Maximum number of in-flight write operations. # eloq_store_max_inflight_write=65536 -# eloq_store_max_write_batch_pages: Maximum pages covered by a single write batch. -# eloq_store_max_write_batch_pages=256 - # eloq_store_coroutine_stack_size: Coroutine stack size in bytes for storage workers. # eloq_store_coroutine_stack_size=32768 @@ -188,6 +185,28 @@ node_group_replica_num = 1 # Maximum number of concurrent standby rsync/ssh jobs managed by EloqStore. # eloq_store_standby_max_concurrency=100 +# Per-disk IOPS limit. EloqStore divides this budget across the shards using +# each store path. Set to 0 to disable IOPS limiting. +# eloq_store_disk_rate_limit_iops=275000 + +# Per-disk throughput limit in MB/s. Set to 0 to disable byte-rate limiting. +# eloq_store_disk_rate_limit_mbps=0 + +# Maximum rate-limit credit that can accumulate while idle, in milliseconds. +# Smaller values smooth bursts; larger values allow burstier IO. +# eloq_store_rate_limit_burst_ms=2 + +# IO size charged as one operation by the IOPS limiter. +# eloq_store_rate_limit_io_unit=2KB + +# Percentage of the rate budget reserved for background reads and writes. +# EloqStore clamps this value to the range [1, 99]. +# eloq_store_rate_bg_ratio=25 + +# Maximum number of in-flight device commands per shard. This complements the +# sustained rate limit with an instantaneous queue-depth bound; 0 disables it. +# eloq_store_max_inflight_io=0 + # size of each data page. # eloq_store_data_page_size=4096