bug? nginx upstream slow_start 参数无效

发布于 2022-09-11 16:21:40 字数 1570 浏览 18 评论 0

问题描述

我有个后端服务程序启动比较耗时,从进程启动到可以正常访问需要5分钟左右。nginx反向代理的slow_start参数可以在后端服务健康后缓冲一段时间,解决我后端服务重启后的访问失败情况

问题出现的环境背景及自己尝试过哪些方法

通过实际测试发现多版本的nginx均无法识别这个参数
已经测试的nginx版本包括 1.4.6、1.12、1.14

➜ nginx /usr/sbin/nginx -t
nginx: [emerg] invalid parameter "slow_start=300s" in /etc/nginx/nginx.conf:59
nginx: configuration file /etc/nginx/nginx.conf test failed

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
Nginx upstram段配置如下:

upstream erp {

keepalive 1000;
server erp1.server.com:8069 weight=5 max_fails=2 fail_timeout=10s slow_start=300s;
server test1.server.com:8069 weight=5 max_fails=2 fail_timeout=10s slow_start=300s;

}

server {

listen 80;
server_name mytest.com;

client_max_body_size 100M;

access_log /var/log/nginx/erp.log;
error_log /var/log/nginx/erp.err;

location / {
    proxy_next_upstream error timeout invalid_header http_500 http_502 http_504;
    proxy_connect_timeout 3;
    proxy_read_timeout 900;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_pass http://erp;
}

}

你期待的结果是什么?实际看到的错误信息又是什么?

根据nginx官方Doc显示应该能正常识别slow_start参数。
并且upstream 字段下的配置文件与官方格式一直,肉眼找不出啊来错误。

不明白为什么不能是被这个参数,求解!!

➜ nginx /usr/sbin/nginx -t
nginx: [emerg] invalid parameter "slow_start=300s" in

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

幻梦 2022-09-18 16:21:40

该功能可能是nginx plus里面的,但是在nginx.org里可以看到参数,很郁闷。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文