首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NGINX上游超时(110:操作超时)

NGINX上游超时(110:操作超时)
EN

Stack Overflow用户
提问于 2022-09-18 21:12:29
回答 1查看 758关注 0票数 1

我在日志中得到了这个错误。[error] 117#117: *16706 upstream timed out (110: Operation timed out) while reading response header from upstream.I已经尝试了各种可能的方法来检查我从哪里得到这个确切的60年代超时时间。

我还将添加更多细节,说明我是如何产生这个错误的(如果需要的话)。当我在本地运行dotnet (dockerized)时,我没有看到任何超时。该API运行时间超过5分钟,但在AKS集群中,它会在60多个小时内超时。

因此,我在配置映射中使用这些标头(对于nginx控制器),.I通过逐个删除和添加这些头来检查它,但在超时中没有改变。

代码语言:javascript
复制
  client-header-timeout: "7200"
  keep-alive: "300"
  keep-alive-requests: "100000"
  keepalive-timeout: "300"
  proxy-connect-timeout: "7200"
  proxy-read-timeout: "7200"
  proxy-send-timeout: "7200"
  upstream-keepalive-requests: "100000"
  upstream-keepalive-timeout: "7200"

我还尝试将这些头添加到我的入口资源/规则中,用于该微服务。

代码语言:javascript
复制
nginx.ingress.kubernetes.io/client-body-timeout: "7200"
    nginx.ingress.kubernetes.io/client-header-timeout: "7200"
    nginx.ingress.kubernetes.io/client-max-body-size: 5000m
    nginx.ingress.kubernetes.io/keep-alive: "300"
    nginx.ingress.kubernetes.io/keepalive-timeout: "300"
    nginx.ingress.kubernetes.io/large-client-header-buffers: 64 128k
    nginx.ingress.kubernetes.io/proxy-body-size: 5000m
    nginx.ingress.kubernetes.io/proxy-buffer-size: 16k
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "7200"
    nginx.ingress.kubernetes.io/proxy-next-upstream-timeout: "7200"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "7200"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "7200"
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/send_timeout: "7200"

Nginx入口控制器版本:

代码语言:javascript
复制
  Release:       v1.0.5
  Build:         7ce96cbcf668f94a0d1ee0a674e96002948bff6f
  Repository:    https://github.com/kubernetes/ingress-nginx
  nginx version: nginx/1.19.9

我们使用Azure Kubernetes集群,核心dns正在从一个活动目录中重新分配所有api/url,该目录部署在Azure windows虚拟机中。

dotnet核心(sdk:6.0.400 and ASP.NET core Runtime 6.0.8)中的后端API (代码中定义的所有保持值和请求超时设置已经过测试)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-26 12:13:59

发现问题了。也许我错过了一些东西,但似乎这些

代码语言:javascript
复制
proxy-read-timeout: "7200"
proxy-send-timeout: "7200"

headers不影响后端GRPC通信的超时。我必须添加“服务器片段”来添加以下内容

代码语言:javascript
复制
grpc_read_timeout 120s; grpc_send_timeout 120s; client_body_timeout 120s;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73766431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档