<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java, Only Java!

    統(tǒng)計(jì)

    留言簿(20)

    積分與排名

    好友空間

    文檔技巧

    閱讀排行榜

    評(píng)論排行榜

    HP-UX中CLOSE_WAIT問(wèn)題解決

    作者一直被某個(gè)項(xiàng)目的HP-UX折磨,系統(tǒng)運(yùn)行一段時(shí)間后就會(huì)出現(xiàn)大量的CLOSE_WAIT連接,然后Apusic應(yīng)用服務(wù)器就一直處于非常繁忙的狀態(tài),但是Dump JVM發(fā)現(xiàn)Apusic的許多線(xiàn)程處在空閑狀態(tài),此時(shí)將Apusic重新啟動(dòng)將連接全部釋放系統(tǒng)就恢復(fù)正常了。
    分析認(rèn)為因?yàn)橄到y(tǒng)在公網(wǎng)上受到攻擊有關(guān),攻擊會(huì)建立大量的空閑連接,然后使連接處于CLOSE_WAIT狀態(tài),從而系統(tǒng)需要消耗大量的資源去維護(hù)這些連接直到斷開(kāi),從而影響系統(tǒng)運(yùn)行的效果。
    為此,作者調(diào)整了相關(guān)的網(wǎng)絡(luò)參數(shù),效果比較明顯,CPU壓力大幅下降。
    ndd -set /dev/tcp tcp_keepalive_interval 120000

    但是,對(duì)于生產(chǎn)系統(tǒng)許多時(shí)候是不希望宕機(jī)的,有沒(méi)有直接斷開(kāi)CLOSE_WAIT連接呢?可以,先用
    ndd -get /dev/tcp tcp_status |grep CLOSE_WAIT
    把已經(jīng)CLOSE_WAIT的連接找出來(lái),然后使用
    ndd -set /dev/tcp tcp_discon 0x<TCP地址>
    例如:輸入 ndd -get /dev/tcp tcp_status |grep 133
    結(jié)果
    000000005843e168 010.010.010.133???????????????????????? 48a68cfa 48a68cf8 00008000 00008072 b64b7c33 b64b7c33 00008000 00500 01460 [17,c539] TCP_ESTABLISHED
    再輸入 ndd -set /dev/tcp tcp_discon 0x000000005843e168
    連接就會(huì)被主動(dòng)斷開(kāi)了。
    如果有人可以寫(xiě)個(gè)腳本定期執(zhí)行,至少能夠解決臨時(shí)性問(wèn)題,如果要真正解決可能還需要想其他辦法,歡迎大家一起來(lái)討論。

    posted on 2008-06-20 07:56 zYx.Tom 閱讀(3598) 評(píng)論(5)  編輯  收藏 所屬分類(lèi): 1.Java世界

    評(píng)論

    # re: HP-UX中CLOSE_WAIT問(wèn)題解決 2008-06-21 00:56 dennis

    服務(wù)器進(jìn)入CLOSE_WAIT,說(shuō)明服務(wù)器是被動(dòng)關(guān)閉,沒(méi)有發(fā)FIN,停留在CLOSE_WAIT狀態(tài)。解決辦法就是強(qiáng)制關(guān)閉,socket設(shè)置SoLinger選項(xiàng)。  回復(fù)  更多評(píng)論   

    # re: HP-UX中CLOSE_WAIT問(wèn)題解決 2008-07-07 22:00 朱遠(yuǎn)翔-Apusic技術(shù)顧問(wèn)

    @dennis
    不好意思,沒(méi)明白你的留言,希望能再補(bǔ)充解釋一下,謝謝。  回復(fù)  更多評(píng)論   

    # re: HP-UX中CLOSE_WAIT問(wèn)題解決 2009-01-15 15:56 myloveunix

    這個(gè)問(wèn)題解決很簡(jiǎn)單
    你在監(jiān)聽(tīng)套接字創(chuàng)建之后,
    int on=1;
    if(setsockopt(ListenSock, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)) != 0)
    ....錯(cuò)誤返回
    連接套接字創(chuàng)建之后,
    if(setsockopt(nLocalSock,SOL_SOCKET,SO_LINGER,(const char*)&ling,sizeof(ling)) !=0)
    ...錯(cuò)誤返回
    這樣系統(tǒng)就不會(huì)出現(xiàn)close_wait狀態(tài)的tcp套接字了。  回復(fù)  更多評(píng)論   

    # re: HP-UX中CLOSE_WAIT問(wèn)題解決 2009-01-15 16:04 myloveunix

    補(bǔ)充:
    struct linger ling;
    ling.l_onoff=1;
    ling.l_linger=5;/* (容許逗留的時(shí)間為5秒) */  回復(fù)  更多評(píng)論   

    # re: HP-UX中CLOSE_WAIT問(wèn)題解決 2012-06-02 16:50 bigtank

    ndd -get /dev/tcp tcp_status | awk '$19=="CLOSE_WAIT" { print $1 }'|xargs -i ndd -set /dev/tcp tcp_discon {}

    但是,似乎沒(méi)有tcp_discon 這個(gè)值。  回復(fù)  更多評(píng)論   

    主站蜘蛛池模板: 99久久99这里只有免费费精品| 久久久亚洲欧洲日产国码农村| 亚洲高清不卡视频| 国产大片免费网站不卡美女| 亚洲乱码国产乱码精品精| 青青草国产免费国产是公开| 岛国片在线免费观看| 亚洲一区二区三区亚瑟| 在线视频免费观看爽爽爽| 久久亚洲AV成人无码电影| 秋霞人成在线观看免费视频| 亚洲毛片αv无线播放一区 | 亚洲精品天堂成人片AV在线播放 | 美女被艹免费视频| www免费插插视频| 波多野结衣一区二区免费视频| 亚洲AV无码乱码麻豆精品国产| 19禁啪啪无遮挡免费网站| 色婷五月综激情亚洲综合| 一本久久综合亚洲鲁鲁五月天| 51午夜精品免费视频| 国产人成亚洲第一网站在线播放| 日韩人妻无码免费视频一区二区三区| 性色av免费观看| free哆拍拍免费永久视频| 亚洲午夜久久久久妓女影院| 一进一出60分钟免费视频| 亚洲精品一级无码鲁丝片| 亚洲国产免费综合| 亚洲日本VA午夜在线影院| 国产男女猛烈无遮挡免费视频| 免费国产污网站在线观看不要卡 | 一个人免费视频观看在线www| 亚洲av色福利天堂| 亚洲а∨天堂久久精品| 9i9精品国产免费久久| 亚洲AV无码乱码国产麻豆| 日韩在线播放全免费| 亚洲精品精华液一区二区| 国产亚洲精品a在线观看| 日本一卡精品视频免费|