--- title: "跨集群复制领导者线程池队列大小配置" date: 2026-03-28 lastmod: 2026-03-28 description: "replication.leader.thread_pool.queue_size 配置项用于控制领导者复制线程池的队列大小。" tags: ["跨集群复制", "CCR", "领导者", "线程池"] summary: "配置项作用 # replication.leader.thread_pool.queue_size 配置项用于控制领导者复制线程池的队列大小。 配置项属性 # 配置路径: replication.leader.thread_pool.queue_size 数据类型: Integer(整数) 默认值: 0(自动计算为 available_processors × 3/2 + 1) 是否可选: 是 作用域: NodeScope(节点级别) 动态更新: 是(可以动态更新,无需重启) 配置建议 # 默认配置(自动计算) # replication: leader: thread_pool: queue_size: 0 # 默认值,自动计算 高负载环境 # replication: leader: thread_pool: queue_size: 2000 # 手动设置更大队列 资源受限环境 # replication: leader: thread_pool: queue_size: 500 # 限制队列大小 功能说明 # 自动计算 # 当设置为 0 时,系统自动计算队列大小为:可用处理器 × 3/2 + 1" --- ## 配置项作用 `replication.leader.thread_pool.queue_size` 配置项用于**控制领导者复制线程池的队列大小**。 ## 配置项属性 - **配置路径**: `replication.leader.thread_pool.queue_size` - **数据类型**: `Integer`(整数) - **默认值**: `0`(自动计算为 available_processors × 3/2 + 1) - **是否可选**: 是 - **作用域**: NodeScope(节点级别) - **动态更新**: 是(可以动态更新,无需重启) ## 配置建议 ## 默认配置(自动计算) ```yaml replication: leader: thread_pool: queue_size: 0 # 默认值,自动计算 ``` ## 高负载环境 ```yaml replication: leader: thread_pool: queue_size: 2000 # 手动设置更大队列 ``` ## 资源受限环境 ```yaml replication: leader: thread_pool: queue_size: 500 # 限制队列大小 ``` ## 功能说明 ## 自动计算 当设置为 0 时,系统自动计算队列大小为:可用处理器 × 3/2 + 1 ## 手动覆盖 非零值允许手动覆盖自动队列大小计算。 ## 队列作用 队列保存等待被领导者线程池处理的复制请求。 ## 使用场景 ## 自动配置(推荐) ```yaml # 让系统自动计算 replication: leader: thread_pool: queue_size: 0 ``` ## 高负载场景 ```yaml # 处理大量复制请求 replication: leader: thread_pool: queue_size: 3000 ``` ## 注意事项 1. **动态更新**: 此配置可以动态更新,无需重启节点。 2. **默认推荐**: 默认值 0(自动计算)通常是最好的选择。 3. **别名关系**: 此配置是 `replication_leader.queue_size` 的别名。 4. **内存使用**: 较大的队列会增加内存使用。 5. **与 plugins.replication 区别**: 此配置的默认值是 0(自动计算),与 plugins.replication 版本的 1000 不同。