婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 一次因信號量引發的tomcat異常退出解決

一次因信號量引發的tomcat異常退出解決

熱門標簽:江蘇電銷外呼防封系統是什么 金融行業外呼線路 東莞人工智能電銷機器人供應商 智能電話機器人線路 廣州電銷機器人系統圖 賀州市地圖標注app 長沙開福怎么申請400電話 高德地圖標注無營業執照 百度地圖標注要不要錢

近期在玩大數據。有個朋友找過來,說他線上的tomcat會莫名其妙的退出,表示非常苦惱,請我幫看看。每次他發現退出了,都通過騰訊云的WEB控制臺登錄,啟動tomcat。

本著助人為樂(shao kao hao chi)的精神,我連上去開始分析。首先肯定是看tomcat的日志,看看有沒有記錄到相關信息,是什么途徑退出的。

從日志上看,tomcat收到了退出請求,并按照要求關閉容器。那么是否可以認為是有人執行了shutdown.sh呢?并不能。執行了shutdown腳本的關閉日志是這樣的。

與其相關的tomcat源碼截圖如下。截圖左側有行號。

tomcat啟動時,設置await,等待關閉指令進入。org\apache\catalina\startup\Bootstrap.java

catalinaDaemon的定義如下。

org\apache\catalina\startup\Catalina.java

具體實例化時,會將接口Server的實例指向StandardServer。類路徑如下。

org\apache\catalina\Server.java

org\apache\catalina\core\StandardServer.java

而StandServer中的輸出相關日志的源碼如下:

讀取的配置文件為org\apache\catalina\core\LocalStrings.properties

當tomcat收到正經的關閉指令時,會輸出此日志,說明是收到指令關閉容器。

正經的指令關閉容器,相關代碼如下。

那么,現在的證據說明,這個tomcat不是通過SHUTDOWN報文關閉的。而且,從下圖來看,也頗能說明這個SHUTDOWN指令不是這么容易發成功的。

那么現在可能性最大的辦法就是通過KILL指令來操作。執行bash腳本需要登錄機器,那么從wtmp、utmp查找一下這個時間點的登錄記錄呢?

下面是IPIP的結果。

換言之,23日早上tomcat異常退出的時候,有一個來自騰訊云的BGP機房的地址也巧合的斷開了會話。而我這個朋友的機器就放在騰訊云。有點奇怪是嗎?

繼續追查,連續追溯幾天的tomcat日志,比對utmp、wtmp結果,再比對IPIP結果,都是如此。來自騰訊云BGP機房的會話斷開,tomcat同一時間點退出。精確到秒級。連續多天出現很多次,說明tomcat退出和WEB會話退出是具備因果關系的。

經過詢問,朋友確認他是習慣于使用WEB控制臺的方式登錄服務器,啟動了tomcat以后就丟在一邊,開始調試接口了。那么有什么可能會導致這樣的因果關系出現?這就要說到Linux系統的一個歷史悠久的進程間通信的機制——信號量。

具體信號量是什么,請自行查詢相關資料了解學習。針對本次問題,可以簡單的理解為進程間通訊的一種機制。

進程A需要進程B做點事,而進程間的內存區域某種意義上說是互不可見的。這個時候就需要通過信號量來完成。進程A可以按照預先定義的信號量規范向進程B發出信號量,當進程B收到后,根據具體信號量的值決定處理邏輯。具體信號量清單,可以在命令行通過如下命令查詢。命令中均為字母,沒有數字1。

這其中最常見的就是9,SIGKILL。當進程收到此信號量時,會被KILL掉。此信號量由操作系統處理,應用不能處理。在vista之前的windows系統中,是有辦法滲透到內核中的。此時可以攔截類似WM_CLOSE之類的消息,讓某個程序無法關閉。到了win7、win10時代,已經不能使用此類技巧了。

此外,我們熟悉的CTRL + C操作,發出的是SIGINT。有些場景下,我們需要通知程序優雅的退出,此時可以發出SIGQUIT,也就是kill -3。

那么WEB控制臺會話斷開,會發出什么信號量呢?我們來試試就知道了。Java雖然說不能操作系統底層,但是sun.misc包有驚喜哦。代碼如下。

如圖所示,這段代碼會在收到信號量時輸出線程名稱,信號量名稱,并翻譯成具體的數字。隨后,在main函數中,我“注冊”了HUP、INT、ABRT、TERM四種信號量。注冊四種是因為不清楚具體會發什么出來,索性有可能的都搞起來。

編譯,打包。此處有一個問題需要注意,由于信號量屬于操作系統底層機制,每個不同操作系統所支持的信號量是不同的,JVM中通過private static native int findSignal(String paramString)提供支持。native方法涉及具體VM實現,不貼代碼了。不過很容易想到的是,windows和linux當然不同。所以此處就要在上位機編寫,下位機調試了。windows底下運行報錯可不要慌張哦。

接下來的事情就簡單了。把程序上傳服務器,通過WEB控制臺登錄服務器,將執行結果重定向到文本文件中,然后靜待控制臺超時。結果如下。

結果不用再分析了,WEB控制臺會在退出時發出SIGHUP,相當于kill -1。而tomcat在收到SIGHUP會怎么操作呢?小伙伴們可以試試看kill -1 pid,再看看日志,就明白了。

解決方案其實也簡單。SIGHUP是HANG UP的意思,可以用nohup xx.sh &來徹底屏蔽SIGHUP和SIGINT。另外,經過測試發現,通過單擊SecureCRT的tab頁右側的×也可以觸發信號量,而直接logout或者點菜單上的紅叉則并不會觸發。

感興趣的小伙伴可以把這個程序擴展一下,測測看。說不定你的異常退出問題也能迎刃而解呢。

此問題的解決離不開上海中通的劉建剛同學,特此致謝。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

標簽:玉樹 張家界 洛陽 滄州 北京 永州 廊坊 松原

巨人網絡通訊聲明:本文標題《一次因信號量引發的tomcat異常退出解決》,本文關鍵詞  一次,因,信號,量,引發,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《一次因信號量引發的tomcat異常退出解決》相關的同類信息!
  • 本頁收集關于一次因信號量引發的tomcat異常退出解決的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲欧洲精品一区二区三区不卡| 亚洲综合激情另类小说区| 99久久婷婷国产| 911国产精品| 日韩欧美国产三级| 亚洲国产综合在线| 美腿丝袜亚洲综合| 欧美色综合影院| 久久综合五月天婷婷伊人| 天堂影院一区二区| 激情深爱一区二区| 欧美成人官网二区| 国产欧美一区二区三区沐欲| 国产精品一区二区免费不卡| 色诱视频网站一区| 亚洲一区在线观看免费| 久久99精品国产麻豆婷婷 | 亚洲国产乱码最新视频| 亚洲人成精品久久久久| 精品中文av资源站在线观看| 久久午夜老司机| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美激情中文字幕| 国产成人精品影院| 欧美日韩在线直播| 男女性色大片免费观看一区二区 | 日韩精品一区二区三区视频播放| 日产欧产美韩系列久久99| 丁香六月久久综合狠狠色| 国产精品久久三区| 麻豆精品久久精品色综合| 精品国产不卡一区二区三区| 国产精品对白交换视频| 91福利国产精品| 国产日韩精品一区二区三区 | 欧美日韩在线播放三区四区| 午夜久久电影网| 国产成人av一区二区三区在线观看| 国产午夜亚洲精品理论片色戒| 亚洲高清视频在线| 精品久久久久久久久久久院品网| 亚洲最新在线观看| 91精品在线观看入口| 欧美久久久一区| 久久久久久电影| 蜜臀国产一区二区三区在线播放| 日韩精品一区二区三区swag| 亚洲在线一区二区三区| 欧美乱妇一区二区三区不卡视频| 亚洲狠狠丁香婷婷综合久久久| 欧美性猛交一区二区三区精品| 亚洲色图制服丝袜| 3d成人动漫网站| 亚洲黄色小视频| 日韩精品一区在线| 免费观看成人av| 日本一区二区免费在线观看视频 | 国产成人av福利| 亚洲一区二区成人在线观看| 成人黄色777网| 日韩av中文字幕一区二区三区| 成人污视频在线观看| 亚洲国产精品精华液网站| 亚洲同性同志一二三专区| 欧美日本韩国一区二区三区视频| 久久伊99综合婷婷久久伊| 欧美视频完全免费看| 7777精品伊人久久久大香线蕉经典版下载 | 中文av一区二区| 懂色av中文一区二区三区| 久久久久亚洲综合| 国产精品主播直播| 国产精品美女一区二区三区| 欧美视频在线播放| 视频在线在亚洲| 国产精品萝li| 91久久精品午夜一区二区| 国产精品香蕉一区二区三区| 国产视频一区二区在线观看| 欧美高清你懂得| 国产中文字幕精品| 久久国产生活片100| 久久亚洲精精品中文字幕早川悠里| 欧美日韩视频在线观看一区二区三区 | 久久亚洲一级片| 欧美久久高跟鞋激| 看电影不卡的网站| 婷婷激情综合网| 欧美电影免费观看高清完整版 | 久久久91精品国产一区二区三区| 国产精品自在在线| 国产精品久久久久精k8| 尤物av一区二区| 国产精品久久久久久久久晋中| 99麻豆久久久国产精品免费优播| 国产一区二三区| 国产精品丝袜黑色高跟| 久久久久久免费毛片精品| 国产精品99久| 国产福利精品一区| 亚洲一区在线看| 亚洲v日本v欧美v久久精品| 日韩女同互慰一区二区| 6080午夜不卡| 精品一区二区日韩| 国内精品视频一区二区三区八戒| 国产精品久久二区二区| 国产精品天美传媒| 在线影院国内精品| 欧美三区在线视频| 国产成人精品亚洲午夜麻豆| 麻豆精品视频在线观看| 欧美亚州韩日在线看免费版国语版| 在线观看国产精品网站| 亚洲成人av一区二区| 天堂一区二区在线免费观看| 日韩一卡二卡三卡四卡| 日韩欧美亚洲国产另类| 久久国产精品99久久久久久老狼| 蜜桃一区二区三区四区| 精品盗摄一区二区三区| 欧美精品一区二区久久婷婷| 国产一区二区三区观看| 成人在线一区二区三区| 亚洲欧洲日韩av| 亚洲高清在线精品| www国产精品av| 国产精品三级久久久久三级| av电影在线观看一区| 在线亚洲高清视频| 亚洲国产日韩一区二区| 日本系列欧美系列| 26uuu亚洲| 中文字幕一区不卡| 在线视频欧美精品| 欧美一区二区三区色| 国产a精品视频| 欧美优质美女网站| 精品亚洲国内自在自线福利| 国产成人精品www牛牛影视| 亚洲欧美国产毛片在线| 日本亚洲视频在线| 久久综合久久综合久久综合| 亚洲精品一二三区| 欧美tickle裸体挠脚心vk| 中文字幕一区二区三区色视频 | 国产精品色一区二区三区| 日本一区二区成人| 国产成人av电影在线| 欧美午夜视频网站| 成人av电影在线| 天堂久久一区二区三区| 国产精品乡下勾搭老头1| 秋霞成人午夜伦在线观看| 国产在线国偷精品产拍免费yy| 国产亚洲视频系列| 亚洲影院免费观看| 久久婷婷一区二区三区| 久久久久97国产精华液好用吗| 国产99久久久精品| 7777女厕盗摄久久久| 成人综合在线观看| 欧美一区二区三区小说| 国产日韩欧美一区二区三区乱码| 久久人人超碰精品| 亚洲成人免费视| 亚洲特级片在线| 91成人免费电影| 欧美日韩国产不卡| 国产成人在线看| 麻豆精品视频在线| 欧美中文字幕亚洲一区二区va在线| 一本大道av伊人久久综合| xvideos.蜜桃一区二区| 中文欧美字幕免费| 国产在线一区观看| 成人少妇影院yyyy| 久久久精品蜜桃| 国产精品每日更新| 国产精品影视网| 午夜久久久久久久久| 色婷婷一区二区| 国产精品123| 欧美成人一区二区| 国产a久久麻豆| 欧美精品一区二区在线观看| 欧美成人精品3d动漫h| 亚洲另类一区二区| 99热精品一区二区| 在线播放一区二区三区| 亚洲综合激情另类小说区| 麻豆一区二区三区| 日韩欧美国产一区二区三区| 久久久久久久久久久久电影 | 国产麻豆精品久久一二三| 日韩精品一区二区三区在线播放 | 日韩激情av在线| 国产精品传媒入口麻豆| 国模娜娜一区二区三区| 国产欧美一二三区|