nginx的server_names_hash_bucket_size问题
发表于:2024-10-22 作者:千家信息网编辑
千家信息网最后更新 2024年10月22日,之前nginx可以正常启动的,后来为了测试方便,就增加多了一些域名也都转向到相同的upstream里面,启动不起来。去logs/errors.log查看,发现如下字样:could not build
千家信息网最后更新 2024年10月22日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安全错误
数据库的锁怎样保障安全
服务器800瓦电源
棋牌软件开发先交定金
中国铁建软件开发
软件开发公司的成本如何做账
连接的服务器超时怎么回事
山东神灯互联网科技有限公司
南昆士兰大学网络安全吗
国泰安数字经济研究数据库
服务器本地安全策略管理员
仍存在于数据库中
逐梦网络技术公司
实施网络安全工程 加强
数据库连接密码加密
域名根服务器管理器
长宁区工商软件开发售后保障
dell2850服务器
数据库领域核心期刊
源码发到服务器安全吗
北京金融软件开发公司有哪些
最近网络安全知识手册
网络安全法力法目的
海运货代软件开发
广州花都网络安全
俄罗斯 网络安全体制
自动安装驱动软件开发原理
app软件开发后怎么上传
欧盟网络安全文件
教学管理系统软件开发
服务器怎么改网络连接
北京金融软件开发公司有哪些