成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

老軟件問題種種

bbbbbb / 3108人閱讀

摘要:基于的軟件系統(tǒng)部署時(shí)分層為應(yīng)用包包啟動腳本包這就是基線,三個(gè)環(huán)境中的分層,任何一層在發(fā)布上線過程中的不一致都會導(dǎo)致潛在的問題。人們發(fā)明了各種工具進(jìn)行排包,判斷,目前仍無法完全確保這種情況的萬無一失。

一個(gè)軟件
數(shù)據(jù)活的一定比應(yīng)用長,
應(yīng)用活的可能比維護(hù)的人長

有年頭的老應(yīng)用,通常最早的設(shè)計(jì)者已經(jīng)不在了。

最初關(guān)注點(diǎn),業(yè)務(wù)域的約束,以及為什么在這里是這么設(shè)計(jì)的信息都沒有了。通常除了原創(chuàng)者,接手做維護(hù)的人,沒有有全面的了解,可能也沒有主觀意愿想讓其繼續(xù)更好的工作下去。

設(shè)計(jì)是一個(gè)講究權(quán)衡的過程,了解的信息越多,越能更好的選擇策略。

所以后續(xù)的維護(hù)者會遇到以下問題范式:

基線問題

正常發(fā)布上線會經(jīng)歷三個(gè)日常,預(yù)發(fā),線上三個(gè)環(huán)境。我們希望三個(gè)環(huán)境完全一致?;趌inux的軟件系統(tǒng)部署時(shí)分層為:

應(yīng)用包

jar包

啟動腳本

RPM包

OS

這就是基線,三個(gè)環(huán)境中的分層,任何一層在發(fā)布上線過程中的不一致都會導(dǎo)致潛在的問題。

隨著時(shí)間推移,無論是誰在某臺機(jī)上因?yàn)橐恍┰颍瑒恿艘幌履_本,問題就開始了。 可能在某個(gè)環(huán)境測試正常的應(yīng)用,在下個(gè)環(huán)節(jié)就出了莫名其妙的情況。

這也是為什么一定要在組織中推動鏡像化,docker形式的集裝箱式封裝,保證了以上幾種層次在各個(gè)環(huán)境的一致性。杜絕前任跟下任埋坑。

我也曾遇到過日常預(yù)發(fā)的中間件基線版本跟較高,而線上中間件基線用的是已經(jīng)找不到的老包,并且與部署系統(tǒng)用的基線仍不一致,這樣的應(yīng)用連無狀態(tài)擴(kuò)容都不行。

日志問題

日志是線上系統(tǒng)查問題利器,隨著不斷遇到問題,工程師傾向于打越來越多的日志。

INFO級的日志過多,線上系統(tǒng)一般會采用WARN級以上的打印級別。為了能看到日志,會有人把日志打到WARN,ERROR級別。

慢慢的,普通的排查日志取代了正常應(yīng)該顯示異常ERROR的日志,填滿了正常輸出,讓初次看的人無從下手。只能靠看Exception,但畢竟不是有Exception就會導(dǎo)致系統(tǒng)業(yè)務(wù)異常,需要一段時(shí)間的觀察才有更好的判斷。

沖突問題

通常老應(yīng)用在每次功能增加后,都有可能引入新的jar包。

由于maven的機(jī)制,新包會帶來更多附帶的包,這些問題在編譯時(shí)并不能發(fā)現(xiàn),只有隨著JVM啟動,業(yè)務(wù)線程跑到此處時(shí)類加載器才會報(bào)出Class Not Found/java.lang.NoClassDefFoundError 等問題。

人們發(fā)明了各種工具進(jìn)行排包,判斷,目前仍無法完全確保這種情況的萬無一失。比如,還有一種方式通過掃描應(yīng)用WEB-INF下的lib包名來輔助判斷是否有相似jar包。

所以

每個(gè)應(yīng)用都有它的故事,devops應(yīng)有對以上問題處理的意識。

本文來自微信公眾號「麥芽面包」,id「darkjune_think」
轉(zhuǎn)載請注明。長按圖片識別二維碼關(guān)注。
交流Email: [email protected]

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70888.html

相關(guān)文章

  • 使用 OAuth 2 和 JWT 為微服務(wù)提供安全保障

    摘要:作為目前最主流的微服務(wù)框架,發(fā)展速度很快,成為了最全面的微服務(wù)解決方案。通過認(rèn)證后,轉(zhuǎn)發(fā)給內(nèi)部相應(yīng)的服務(wù)器。所有遠(yuǎn)程訪問資源服務(wù)器相關(guān)的必須提供。 Part 1 - 理論相關(guān) 作者 freewolf 關(guān)鍵詞 微服務(wù)、Spring Cloud、OAuth 2.0、JWT、Spring Security、SSO、UAA 寫在前面 作為從業(yè)了十多年的IT行業(yè)和程序的老司機(jī),今天如果你說你不懂...

    littleGrow 評論0 收藏0
  • 使用 OAuth 2 和 JWT 為微服務(wù)提供安全保障

    摘要:作為目前最主流的微服務(wù)框架,發(fā)展速度很快,成為了最全面的微服務(wù)解決方案。通過認(rèn)證后,轉(zhuǎn)發(fā)給內(nèi)部相應(yīng)的服務(wù)器。所有遠(yuǎn)程訪問資源服務(wù)器相關(guān)的必須提供。 Part 1 - 理論相關(guān) 作者 freewolf 關(guān)鍵詞 微服務(wù)、Spring Cloud、OAuth 2.0、JWT、Spring Security、SSO、UAA 寫在前面 作為從業(yè)了十多年的IT行業(yè)和程序的老司機(jī),今天如果你說你不懂...

    xzavier 評論0 收藏0
  • 新手福音:巨杉數(shù)據(jù)庫教程專區(qū)上線啦!

    摘要:為了提供更優(yōu)質(zhì)的學(xué)習(xí)資源,巨杉數(shù)據(jù)庫的技術(shù)大牛錄制了一套視頻教程,以簡單直觀的方式提供大家學(xué)習(xí)使用巨杉數(shù)據(jù)庫。如果你是剛剛接觸巨杉數(shù)據(jù)庫的用戶,本套教程會讓你對巨杉產(chǎn)生一套完整的認(rèn)知,并系統(tǒng)的掌握使用方法。 作為一個(gè)程序員 在經(jīng)歷了種種入門之后…showImg(https://segmentfault.com/img/bVMhAI?w=640&h=406); showImg(https...

    liujs 評論0 收藏0
  • 雜談:漸進(jìn)增強(qiáng)與優(yōu)雅降級

    摘要:而漸進(jìn)增強(qiáng)和優(yōu)雅降級兩種不同的開發(fā)流程,也是在我們項(xiàng)目初期做調(diào)研選型時(shí)會考慮的一個(gè)點(diǎn)。二者區(qū)別漸進(jìn)增強(qiáng)和優(yōu)雅降級只是看待同種事物的兩種觀點(diǎn)。漸進(jìn)增強(qiáng)和優(yōu)雅降級都關(guān)注于同一網(wǎng)站在不同設(shè)備里不同瀏覽器下的表現(xiàn)程度。 作為一名前端開發(fā)人員,最頭疼的莫過于瀏覽器兼容。遠(yuǎn)古時(shí)期萬惡的IE6,到現(xiàn)在CSS3不兼容的IE7/8.為了保證不同版本瀏覽器都有共同或更優(yōu)化的用戶體驗(yàn),前端搬磚的我們不得不與...

    hiyang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<