日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

線上nginx偶爾出現(xiàn)502錯(cuò)誤

作者:weixin_47561225 更新時(shí)間: 2022-10-11 編程語(yǔ)言

周末休息的時(shí)候,經(jīng)理突然發(fā)消息來(lái),說(shuō)服務(wù)器崩了,馬上打開(kāi)網(wǎng)站查看,發(fā)現(xiàn)部分接口請(qǐng)求的時(shí)候,nginx報(bào)502錯(cuò)誤。登上服務(wù)器,查看了nginx錯(cuò)誤日志,發(fā)現(xiàn)了大量的異常。

no live upstreams while connecting to upstream

?Only one usage of each socket address (protocol/network address/port) is normally permitted) while connecting to upstream

?起初以為是nginx的配置問(wèn)題,百度了許久,修改了proxy_buffer_size,proxy_buffers 參數(shù),加大了緩存,502問(wèn)題好像消失了。跟經(jīng)理說(shuō)問(wèn)題解決了,是配置問(wèn)題。

。。。

沒(méi)想到第二天一早起床,打開(kāi)微信一看,一堆消息,說(shuō)服務(wù)器又崩了,和昨天的問(wèn)題一樣,早餐都沒(méi)吃,趕緊跑去公司。

再次檢查nginx錯(cuò)誤日志,發(fā)現(xiàn)了一個(gè)錯(cuò)誤記錄

?[crit] 31144#87716: *15013 connect() to [::1]:9008 failed (10055: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full) while connecting to upstream

?是說(shuō)系統(tǒng)缺少足夠的緩沖區(qū)空間或隊(duì)列已滿,該不會(huì)是太多連接到nginx了吧,覺(jué)得有可能是websocket長(zhǎng)連接的問(wèn)題,于是把websocket連接暫時(shí)關(guān)閉,worker_connections參數(shù)調(diào)大,發(fā)現(xiàn)接口變正常了,沒(méi)有502了。于是跟經(jīng)理信誓旦旦保證,問(wèn)題已經(jīng)解決了。

沒(méi)想到第三天還是出現(xiàn)了問(wèn)題,再不解決就要提桶跑路了。

其實(shí)這里我進(jìn)入了一個(gè)誤區(qū),因?yàn)榻涌诜祷氐氖莕ginx502,以為是nginx的問(wèn)題,后來(lái),在tomcat的錯(cuò)誤日志里,發(fā)現(xiàn)了這個(gè)問(wèn)題

Caused by: java.net.SocketException: No buffer space available (maximum connections reached?): connect

這里已經(jīng)很明顯了,是tcp連接數(shù)的問(wèn)題,連接數(shù)滿了,無(wú)法再建立連接了

服務(wù)器使用的是 windows serve 2012R2

使用命令 netsh interface ipv4 show dynamicportrange tcp 查看了端口數(shù)發(fā)現(xiàn)只開(kāi)放了少量端口

只需要打開(kāi)注冊(cè)表,新增兩個(gè)參數(shù)

找到 HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 目錄下

新增?MaxUserPort (默認(rèn)可用端口) 值為 65534

新增?TcpTimedWaitDelay? (tcp恢復(fù)時(shí)間)值為 30

我這里修改了注冊(cè)表后,并不需要重啟。

然后再次輸入命令?netsh interface ipv4 show dynamicportrange tcp

發(fā)現(xiàn)端口數(shù)改變了。

。。

目前已經(jīng)觀察了半個(gè)月,并沒(méi)有發(fā)現(xiàn)出現(xiàn)502錯(cuò)誤了。

原文鏈接:https://blog.csdn.net/weixin_47561225/article/details/127246781

欄目分類
最近更新