配置项作用 #
async_search.active.context.reaper_interval 配置项控制异步搜索活跃上下文清理器(Active Context Reaper)的运行间隔。该清理器负责检查并清理已过期或超时运行的异步搜索上下文,释放相关资源。
配置项类型 #
该配置项为静态配置,修改后需要重启节点才能生效。
默认值 #
5m(5分钟)
是否必需 #
可选配置项
取值范围 #
5s ~ 无限制
最小值:5秒
工作原理 #
异步搜索允许长时间运行的查询在后台执行。每个异步搜索都会创建一个搜索上下文(Context),包含搜索状态和中间结果。上下文清理器的工作包括:
- 定期检查:按照配置的间隔检查所有活跃的异步搜索上下文
- 识别过期上下文:找出已超过过期时间或最大运行时间的上下文
- 资源释放:释放过期上下文占用的内存和 CPU 资源
- 异步清理:清理操作异步执行,不阻塞正常的搜索请求
使用示例 #
# 默认配置(每5分钟清理一次)
async_search.active.context.reaper_interval: 5m
# 更频繁的清理(每1分钟清理一次)
async_search.active.context.reaper_interval: 1m
# 较少清理(每10分钟清理一次)
async_search.active.context.reaper_interval: 10m
# 最小间隔(每5秒清理一次)
async_search.active.context.reaper_interval: 5s
推荐设置建议 #
推荐使用默认值 5m
特殊情况调整:
# 高并发、大量异步搜索场景
# 可能需要更频繁的清理以防止资源积累
async_search.active.context.reaper_interval: 3m
# 异步搜索量较少的场景
# 可以使用较长间隔减少后台任务开销
async_search.active.context.reaper_interval: 10m
配置影响 #
| 设置值 | 资源释放速度 | 系统开销 | 适用场景 |
|---|---|---|---|
| 较小(如 1m) | 快 | 较高 | 大量异步搜索,内存紧张 |
| 默认(5m) | 适中 | 适中 | 通用场景 |
| 较大(如 10m+) | 慢 | 较低 | 少量异步搜索,内存充足 |
相关配置项 #
async_search.max_keep_alive:异步搜索结果的最大保留时间async_search.max_search_running_time:异步搜索的最大运行时间async_search.node_concurrent_running_searches:每个节点并发运行的异步搜索数量
注意事项 #
- 静态配置:修改此配置需要重启节点才能生效
- 最小值限制:设置值不能小于 5 秒
- 资源平衡:间隔过小会增加后台任务开销,间隔过大会导致过期上下文占用资源时间过长
- 监控建议:建议监控异步搜索上下文的数量和内存使用情况,根据实际情况调整此参数





