nginx的server_names_hash_bucket_size问题
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,之前nginx可以正常启动的,后来为了测试方便,就增加多了一些域名也都转向到相同的upstream里面,启动不起来。去logs/errors.log查看,发现如下字样:could not build
千家信息网最后更新 2025年02月03日nginx的server_names_hash_bucket_size问题
保存服务器名字的hash表是由指令 server_names_hash_max_size 和 server_names_hash_bucket_size所控制的。参数hash bucket size总是等于hash表的大小,并且是一路处理器缓存大小的倍数。在减少了在内存中的存取次数后,使在处理器中加速查找hash表键值成为可能。如果 hash bucket size等于一路处理器缓存的大小,那么在查找键的时候,最坏的情况下在内存中查找的次数为2。第一次是确定存储单元的地址,第二次是在存储单元中查找键 值。因此,如果Nginx给出需要增大 hash max size 或 hash bucket size的提示,那么首要的是增大前一个参数的大小.
之前nginx可以正常启动的,后来为了测试方便,就增加多了一些域名也都转向到相同的upstream里面,启动不起来。
去logs/errors.log查看,发现如下字样:
could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32
原来是由于增加多域名后,在默认大小下已经不能正常hash存储了,需要去修改此参数的大小。
修改conf/nginx.conf中的http节为如下示例
http {
server_names_hash_bucket_size 64;
include mime.types;
default_type application/octet-stream;
.....省略
此处为了以后增加方便,没有直接修改为日志中提示的32大小,而是直接修改为64了
再次启动,正常运行
保存服务器名字的hash表是由指令 server_names_hash_max_size 和 server_names_hash_bucket_size所控制的。参数hash bucket size总是等于hash表的大小,并且是一路处理器缓存大小的倍数。在减少了在内存中的存取次数后,使在处理器中加速查找hash表键值成为可能。如果 hash bucket size等于一路处理器缓存的大小,那么在查找键的时候,最坏的情况下在内存中查找的次数为2。第一次是确定存储单元的地址,第二次是在存储单元中查找键 值。因此,如果Nginx给出需要增大 hash max size 或 hash bucket size的提示,那么首要的是增大前一个参数的大小.
大小
参数
处理器
处理
存储
内存
单元
是在
次数
缓存
提示
相同
倍数
再次
名字
地址
域名
多域名
字样
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
杭州手淘网网络技术有限公司
战地5香港服务器挂多吗
华为网络安全中级认证待遇
审计网络安全自查表
软件开发app流程报告
普通大学生网络安全
福建省软件开发报价
配方数据库是什么意思
fm22怎么改数据库
互联网科技运营部组织架构
dell存储服务器硬盘更换
南京加工软件开发定制价格
中学网络安全计划
软件开发专业技术岗位
如何确立网络安全意识论文
连接数据库无法恢复
80路视频服务器啥意思
网络安全法6月1日环球网
nas服务器装游戏
长沙新炬网络技术公司如何
成都招商软件开发银行面试
安庆楚汉网络技术服务
人才数据库可信吗
上海营销网络技术服务费
网络安全行政执法自查报告
冷媒数据库
软件开发分包会计分录
网络安全招标为什么
角逐网络安全攻防
方舟服务器可以查询到但连接超时