• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            冰果

            技術群:26678700     
            交流QQ: 704839634
            合作: 1) 可兼職遠程辦公開發(fā); 2) 有一套Go+Python開發(fā)的行業(yè)短信云平臺可合作;3)目前正在開發(fā)物聯(lián)網(wǎng)、大數(shù)據(jù)平臺。

            守護與程序穩(wěn)定性

                   在我的技術交流群里,看到有朋友討論實現(xiàn)重連問題,說說我自己對這個問題的淺見。
                   重連接不如重啟;盡力維持穩(wěn)定不如讓它崩潰。
                   當程序內部狀態(tài)已經(jīng)紊亂,而我們無法控制,或許這是第三方庫或框架的問題,或許這是其它同事學藝不精的問題。與其我們花費大量精力去解決,想方設法找一種讓程序永久不停的解決方案,不如我們使用簡單的腳本語言寫一個簡單的守護,由這個守護程序去重啟動我們的應用程序,那么我們的應用程序就可以輕松的退出,就在它無法維持正確狀態(tài)的時候。簡單了就使程序容易控制,bug相對少而且容易查找,那么我們就能保證守護程序相對穩(wěn)定,因此把一個小小的守護程序做穩(wěn)定,遠比把一個不停變化的應用系統(tǒng)搞穩(wěn)定容易得多。
                  守護程序不穩(wěn)定怎么辦?很多新手擔心應用系統(tǒng)和守護一起死掉,有這種擔心是正確的。為解決這個擔心,一般采用兩級守護:一級守護,負責守護應用系統(tǒng);二級守護,負責守護一級守護程序。這樣就把同時死掉的幾率下降很多了。那是不是為了安全,我們搞個十級、二十級守護,這就繁瑣到杞人憂天的地步了,如果真有那么不穩(wěn)定,我們應該檢查程序,提高我們代碼質量,好好考慮開發(fā)人員的素質和工作態(tài)度了。
             

                  當然,簡單的程序退出,是否影響應用系統(tǒng)的業(yè)務邏輯完整性?是不是我們的應用系統(tǒng)本身不允許簡單的退出?這個問題很復雜,看你自己怎么設計這個系統(tǒng)的。為了達到能簡單的退出,一個可能的解決辦法就是,在架構上保證,在協(xié)議上保證,遵循《unix編程藝術》上的設計原則是很重要的。
                  早年我力求把程序寫得很穩(wěn)定,也要求周圍的人把程序寫得很穩(wěn)定,回頭看其實從來沒達到過。主要是技術不行,別人就更無法把握,就算自己是主管,也逼迫不了別人。
                   記得曾經(jīng)有一個客戶端是用java寫的,它本身是一個后臺服務,收集地市服務器的日志和運行狀態(tài),當時采用mina框架,v0.9的版本。為了socket斷開后的重連接,程序員寫了很多代碼,兩三個while循環(huán),最后竟然不穩(wěn)定。寫了這么多代碼,能達到預期目的還好,達不到還費力,就郁悶了。我也沒時間去查什么bug, 是不是mina使用不對啊什么的。后來,我直接叫他們把那些檢測和重連的代碼刪除,程序一旦發(fā)現(xiàn)連接不了中心服務器,直接退出算了,我使用bash寫了一個簡單的守護,負責重啟動它。這個問題就這樣簡單的解決了,本來這個后臺服務也要求不高,直接退出沒有什么業(yè)務邏輯問題。
                  守護是不可靠的,最終還是需要人來維護。守護配合一定的監(jiān)控報警手段,讓維護人員及時發(fā)現(xiàn)問題初現(xiàn),及時解決軟硬件問題,才是解決之道。
                  當然,程序穩(wěn)定性還是要程序本身穩(wěn)定,如果程序不停core,守護不停重啟,有什么作用呢。

            posted on 2011-05-04 00:19 冰果 閱讀(2065) 評論(2)  編輯 收藏 引用 所屬分類: 其它

            評論

            # re: 守護與程序穩(wěn)定性[未登錄] 2011-05-05 00:41 nscboy

            這個觀點我非常贊同.與其費勁力氣寫看門狗程序,還不如盡力完善原來程序的邏輯.  回復  更多評論   

            # re: 守護與程序穩(wěn)定性[未登錄] 2011-05-09 09:10 zhang

            相對的。不能走極端  回復  更多評論   

                                                        
            亚洲精品乱码久久久久久自慰| 免费无码国产欧美久久18| 亚洲国产精品成人久久| 久久久久亚洲av无码专区喷水| 国产V综合V亚洲欧美久久| 久久香蕉国产线看观看乱码| 久久久久这里只有精品| 国产成人精品综合久久久久| 久久91精品久久91综合| 久久久久久精品免费免费自慰| 国产精品久久久久久久| 欧美久久综合九色综合| 韩国免费A级毛片久久| 久久99精品久久久久久不卡| 久久人人爽人人爽人人片AV不| 国产精品丝袜久久久久久不卡| 久久精品国产亚洲AV久| 久久久久久一区国产精品| 久久青青草原精品国产| 久久无码AV一区二区三区| 久久九九有精品国产23百花影院| 国产亚洲精品久久久久秋霞| 久久99精品国产麻豆婷婷| 欧美久久综合性欧美| 国产成人久久激情91| 久久人人爽人人爽人人AV| 大香伊人久久精品一区二区 | 91精品国产色综久久| 亚洲AV无码久久精品成人| 亚洲日本va午夜中文字幕久久 | 久久伊人五月丁香狠狠色| 久久香蕉国产线看观看乱码| 精品久久久久久久无码| 久久青青草原精品国产| 亚洲精品无码久久久影院相关影片| 综合久久给合久久狠狠狠97色| 久久久久久久综合综合狠狠| 激情五月综合综合久久69| 久久se精品一区二区影院 | 久久久久久国产精品免费无码| 一本久久a久久精品vr综合|