今天在服務(wù)器巡檢的時(shí)候,發(fā)現(xiàn)一個(gè)服務(wù)大量拋出異常

異常信息為:

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營(yíng)銷(xiāo)培訓(xùn),SEM培訓(xùn),網(wǎng)絡(luò)優(yōu)化,在線營(yíng)銷(xiāo)培訓(xùn)

LockStatusPushError&&Message:One or more errors occurred. (An error occurred while sending the request. Too many open files)&InnerMessageAn error occurred while sending the request. Too many open files& at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)at System.Threading.Tasks.Task.Wait()at CommonHelper.HttpHelper.HttpRequest(String Url, String Method, String ContentType, Byte[] data, Encoding encoding)at CommonHelper.HttpHelper.PostForm(String Url, Dictionary`2 para, Encoding encoding)at CommonHelper.HttpHelper.PostForm(String Url, Dictionary`2 para)at DeviceService.Program.LockStatusPushMethod()

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營(yíng)銷(xiāo)培訓(xùn),SEM培訓(xùn),網(wǎng)絡(luò)優(yōu)化,在線營(yíng)銷(xiāo)培訓(xùn)

首先推斷,是程序打開(kāi)文件(端口或者管道)太多導(dǎo)致的超過(guò)系統(tǒng)最大限制

使用 ulimit -n 查看最大限制 發(fā)現(xiàn) 系統(tǒng)最大限制為65535 為正常值

使用 lsof | wc -l 查看當(dāng)前打開(kāi)文件數(shù) 發(fā)現(xiàn)執(zhí)行非常緩慢,執(zhí)行結(jié)果顯示系統(tǒng)當(dāng)前打開(kāi)文件數(shù)500w++。。。。。

繼而查看dotnet程序打開(kāi)文件數(shù),發(fā)現(xiàn)為400w++

lsof>>/tmp/lsof.log 把當(dāng)前打開(kāi)文件列表保存 以供問(wèn)題判斷。

 

文件導(dǎo)出后,發(fā)現(xiàn) dotnet 程序有大量狀態(tài)為 CLOSE_WAIT 的socket連接 目的地址為程序訪問(wèn)的HTTP服務(wù)器的80端口

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營(yíng)
        
        	<div   id=

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式