Nginx后端超时504重复请求

在一次业务中客户端请求osb平台再经过nginx转发后端,开发反馈请求次数大于1导致问题,经排查客户端请求一次,osb平台设置超时为30s,nginx配置等待上游服务器响应时最多等待30秒

部分配置文件
upstream xx {server 10.6.6.1:8080 weight=1;server 10.6.6.2:8080 weight=1;server 10.6.6.45:8080 weight=1;}location / {root   html;proxy_pass http://xx;proxy_set_header X-Forwarded-For $remote_addr;proxy_read_timeout 30;}
# access.log日志10.6.6.35|18/Jun/2024:10:35:42 +0800|POST /nis/static/inv HTTP/1.1|499|0|-|-|10.6.6.1:8080, 10.6.6.2:8080|504, -|33.730|30.001, -
10.6.6.37|18/Jun/2024:10:42:39 +0800|POST /nis/static/inv HTTP/1.1|200|1006|-|-|10.6.6.1:8080|200|1.151|1.151
10.6.6.37|18/Jun/2024:10:47:19 +0800|POST /nis/static/inv HTTP/1.1|200|846|-|-|10.6.6.2:8080|200|0.595|0.595
10.6.6.36|18/Jun/2024:11:15:21 +0800|POST /nis/static/inv HTTP/1.1|499|0|-|-|10.6.6.45:8080, 10.6.6.1:8080|504, -|33.170|30.000, -
#error.log日志2024/06/18 10:35:38 [error] 12425#0: *8490383024 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.6.6.35, server: , request: "POST /nis/static/inv HTTP/1.1", upstream: "http://10.6.6.1:8080/nis/static/inv", host: "10.6.6.5"
2024/06/18 11:15:18 [error] 12422#0: *8490923679 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.6.6.36, server: , request: "POST /nis/static/inv HTTP/1.1", upstream: "http://10.6.6.45:8080/nis/static/inv", host: "10.6.6.5"

访问日志显示2个时间节点请求时出现499状态码然后请求了2次后端节点

proxy_next_upstream

经查找proxy_next_upstream参数在默认情况下会开启,即使在为配置情况下包括以下

状态码含义
error当nginx无法与上游服务器建立连接时
timeout当上游服务器在规定时间内没有响应时
invalid_header当上游服务器返回无效的响应头时
http_500当上游服务器返回500内部服务器错误时
http_502当上游服务器返回502错误网关时
http_503当上游服务器返回503服务不可用时
http_504当上游服务器返回504网关超时时
off停止将请求发送给下一台后端服务器

默认当nginx与上游超时则会轮询upstream中所包含所有的节点再进行请求

自定义指定

根据项目需求自定义那种情况下应该转发到下一个上游服务器

location / {proxy_pass http://xx;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $remote_addr;proxy_read_timeout 30;proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/31732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

舒适佩戴,享受沉浸式音乐体验,西圣AVA2耳机体验

平时不管是听音乐,还是打电话,戴上一副耳机都可以让我们获得更好的隐私性,并且在公共场所,比如办公室、车厢里,也可以获得属于自己的空间。现在市面上耳机的选择非常多,音质、续航和佩戴的舒适度是我们选择…

接口自动化测试实战:测试用例也能自动生成

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 作为测试,你可能会对以下场景感到似曾相识:开发改好的 BUG 反复横跳&…

智慧园区数字化能源云平台的多元化应用场景,您知道哪些?

智慧园区数字化能源云平台的多元化应用场景,您知道哪些? 智慧园区数字化能源云平台,作为新一代信息技术与传统能源管理深度融合的典范,正引领着产业园区向智慧化、绿色化转型的浪潮。该平台依托于大数据、云计算及人工智能等前沿…

跨境多账号需知:指纹浏览器需要用独立IP吗?

指纹浏览器也成为反检测浏览器,旨在安全管理多个账户。在跨境多账号中,多个账号容易引发网站怀疑并最终导致大量账户被暂停,使用反检测浏览器的主要目的是通过创建新的浏览器指纹来隐藏用户的真实浏览器指纹。 但浏览器指纹并不是网站关注的唯…

解决Few-shot问题的两大方法:元学习与微调

基于元学习(Meta-Learning)的方法: Few-shot问题或称为Few-shot学习是希望能通过少量的标注数据实现对图像的分类,是元学习(Meta-Learning)的一种。 Few-shot学习,不是为了学习、识别训练集上的数据,泛化…

生成视频 zeroscope_v2_576w 学习笔记

目录 生成视频代码: 维度报错: 解决方法,修改代码: 已开源: 视频生成模型 Zeroscope开源 免费无水印 视频生成模型 Zeroscope_v2_576w 开源 - 腾讯云开发者社区-腾讯云 生成视频代码: import torch fro…

Java中将文件转换为Base64编码的字节码

在Java中,将文件转换为Base64编码的字节码通常涉及以下步骤: 读取文件内容到字节数组。使用java.util.Base64类对字节数组进行编码。 下面是一个简单的Java示例代码,演示如何实现这个过程: import java.io.File; import java.io…

Ascend C Add算子样例代码详解

核函数定义 核函数(Kernel Function)是Ascend C算子设备侧实现的入口。在核函数中,需要为在一个核上执行的代码规定要进行的数据访问和计算操作,当核函数被调用时,多个核都执行相同的核函数代码,具有相同的…

Linux系统上安装Miniconda并安装特定版本的Python

要在Linux系统上安装Miniconda并安装特定版本的Python(例如3.10.12),请按照以下步骤进行操作: 1. 下载并安装Miniconda 下载Miniconda安装脚本: 使用wget或curl下载Miniconda安装脚本。以下是使用wget的命令&#xff…

L55--- 257.二叉树的所有路径(深搜)---Java版

1.题目描述 2.思路 (1)因为是求二叉树的所有路径 (2)然后是带固定格式的 所以我们要把每个节点的整数数值换成字符串数值 (3)首先先考虑根节点,也就是要满足节点不为空 返回递归的形式dfs(根节…

邦芒支招:职场上拥有这3种智慧的领导值得跟随

​​小的时候,家长的教育很重要,这决定着小朋友的性格发展;读书的时候,学校的老师很重要,这决定着学生的学习态度与成绪;工作的时候,公司的领导很重要,这决定着员工的职场发展能走多…

AI通用大模型不及垂直大模型?各有各的好

​​​​​​​AI时代,通用大模型和垂直大模型,两者孰优孰劣,一直众说纷纭。 通用大模型,聚焦基础层,如ChatGPT、百度文心一言,科大讯飞星火大模型等,都归属通用大模型,它们可以解答…

51单片机STC89C52RC——4.1 独立按键(数码管显示按键值)

目录 目录 目的 一,STC单片机模块 二,矩阵按键模块 2.1 针脚定义 ​编辑 2.2 矩阵按键位置 2.3 如何理解按键按下后针脚的高低电平 2.3.1 错误理解1 2.3.2 错误理解2 2.3.3 正确判定按下的是那个按键的逻辑 2.3.4 判定按键按下的依次扫描程…

游戏中插入音效

一、背景音乐 准备:素材音乐 方法: 1、方法1: (1) 将背景音乐 bgAudio 拖放到Hierarchy面板 (2) 选中 bgAudio,勾选开始运行就播放、循环播放。调节音量(volume) 2、方法2: (1) Create Empty&#x…

python学习—列表和元组

系列文章目录 python学习—合并TXT文本文件 python学习—统计嵌套文件夹内的文件数量并建立索引表格 python学习—查找指定目录下的指定类型文件 python学习—年会不能停,游戏抽签抽奖 python学习—循环语句-控制流 python学习—合并多个Excel工作簿表格文件 文章目…

处理导入Excel文件过大导致Zip bomb detected的问题

处理导入Excel文件过大导致Zip bomb detected的问题 处理导入Excel文件过大导致Zip bomb detected的问题解决方案完整示例代码处理内存溢出问题优化处理大文件的策略 处理导入Excel文件过大导致Zip bomb detected的问题 在Java应用中导入Excel文件时,可能会遇到文件…

大语言模型-Transformer

目录 1.概述 2.作用 3.诞生背景 4.历史版本 5.优缺点 5.1.优点 5.2.缺点 6.如何使用 7.应用场景 7.1.十大应用场景 7.2.聊天机器人 8.Python示例 9.总结 1.概述 大语言模型-Transformer是一种基于自注意力机制(self-attention)的深度学习…

算法篇-二叉树

二叉树的遍历 分为前序、中序和后续的遍历&#xff0c;思想就是利用递归。 前序遍历-中左右 代码&#xff1a; public void travelTree(TreeNode node, List<Integer> resulst) {if (node null){return;}// 中resulst.add(node.val);// 左travelTree(node.left, resul…

DN-DETR

可以看到&#xff0c;与 DAB-DETR 相比&#xff0c;最大的差别仍然在 decoder 处&#xff0c;主要是 query 的输入。DN-DETR 认为可以把对 offsets 的学习&#xff0c;看作一种对噪声学习的过程&#xff0c;因此&#xff0c;可以直接在 GT 周围生成一些 noised boxes&#xff0…

【机器学习】transformer框架理论详解和代码实现

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f4a5;&#x1f4a5;个人主页&#xff1a;奋斗的小羊 &#x1f4a5;&#x1f4a5;所属专栏&#xff1a;C语言 &#x1f680;本系列文章为个人学习…