labels_hash_max_size
指令 `labels_hash_max_size` 设置用于在 NGINX 中存储全局键值标签的哈希表的最大大小。
Global key-value labels for dynamic configuration
·
http
语法labels_hash_max_size number;
默认值512
上下文http
参数1
说明
指令 labels_hash_max_size 是 ngx_http_label_module 的一部分,允许用户定义可在整个 NGINX 配置中访问的全局键值标签。该指令指定用于存储这些标签的哈希表可容纳的条目数量上限。此指令的值应为正整数,用以决定表的容量。合理选择哈希表大小可在标签数量较多的情况下提高性能,减少哈希冲突的概率,从而加快标签检索的查找速度。
在配置此指令时,应考虑预期环境中的标签数量。如果定义的最大大小过小,可能导致性能下降或出现意外行为,因为额外的标签可能无法被正确存储。当增加该大小时,也必须确保服务器的内存资源能够容纳更大的哈希表。根据用例选择合适的大小以有效使用哈希表,会显著影响请求处理过程中标签访问时间的效率。对于简单用例,默认设置通常足够,但在更复杂的场景中进行优化可能会提升应用性能。
配置示例
http {
labels_hash_max_size 1024;
label environment production;
label region us-east-1;
# more configurations...
}⚠
如果哈希表大小设置得太小,标签可能无法正确存储,导致应用中出现缺失值。
⚠
注意将该值设置得过高对内存的影响,因为可能导致资源耗尽。
⚠
增大该大小会增加内存使用;请根据预期标签数量谨慎调整。