通过修改hz参数的值,您可以调整Redis执行定期任务的频率,从而改变云原生内存数据库Tair清除过期key、清理超时连接的效率。
Tair定期任务与hz参数的关系
为了定期检测资源和服务状态并根据预定策略执行相应的操作,Tair调用一个内部函数来执行多种后台任务,例如:
- 计算LRU信息并清除过期key。
- 关闭超时的客户端连接。
- 整理hash类型的数据。
- 执行RDB或AOF持久化相关操作。
- 更新统计信息。
这些定期任务是Tair服务正常运行的保障,它们的执行频率由hz参数的值指定,默认为10,即每秒执行10次。
典型应用场景
Tair会通过执行定期任务来主动清除过期key,执行过程如下:
- 随机检查20个设置了过期时间的Key。
- 删除检查中发现的所有过期Key。
- 如果检查结果中25%以上的Key已过期,则开始新一轮任务。
如果过期key数量很多或者增加速度很快,而Tair的主动清除频率较低,过期key将占用大量的内存空间,可能会影响Tair服务的性能。适当调整hz参数的值,提高清除频率,能够很好地解决这个问题。
取值范围及设置建议
hz的取值范围为1~500。增大hz参数的值会提升各项定期任务的执行频率,但也会提高Tair服务的CPU使用率。默认值10在一般情况下已经可以满足需求,如果业务场景对于某些定期任务的执行频率有很高的要求,您可以尝试在100以内调整参数值。将hz的值增加到100以上对CPU使用率有相对较大的影响,请谨慎操作。
操作步骤
- 访问Tair实例列表,在上方选择地域,然后单击目标实例ID。
- 在左侧导航栏中,单击参数设置。
- 在参数列表中,单击hz右侧操作列的修改。
- 在弹出的对话框中完成以下步骤。
- 按照业务需求修改hz的值。
- 单击确定。
相关API
API接口 | 说明 |
---|---|
DescribeParameters | 查询Tair实例的配置参数和运行参数。 |
ModifyInstanceConfig | 修改Tair实例的参数配置。 |