成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

編碼習(xí)慣之異常處理

Kylin_Mountain / 3267人閱讀

摘要:編碼習(xí)慣之異常處理常識對于透傳云系統(tǒng)或者是其他的大型系統(tǒng),最怕的事情第一是系統(tǒng)出現(xiàn)了異常我不知道,等問題鬧大了用戶投訴了才知道出問題了。隨著透傳云業(yè)務(wù)流程越來越復(fù)雜,和周邊子模塊一堆集成,一堆的后臺隊列任務(wù),任何一塊都可能出問題。

編碼習(xí)慣之異常處理

@(常識)

對于 透傳云 系統(tǒng)或者是其他的大型IT系統(tǒng),最怕的事情

第一是系統(tǒng)出現(xiàn)了異常我不知道,等問題鬧大了用戶投訴了才知道出問題了。

第二就是出了問題之后無法找到出錯原因。

針對這2個問題,說說我對異常是怎么樣想的和規(guī)定異常處理的。

第一個問題,系統(tǒng)出異常了我不知道,等技術(shù)支持問的時候才知道。

這個問題出現(xiàn)非常多,而且非常嚴(yán)重。經(jīng)常會出現(xiàn)用戶反饋、投訴過來說某個功能不可用,技術(shù)支持找的時候開發(fā)人員再定位分析之后,才發(fā)現(xiàn)之前的某一步出錯了。隨著 透傳云 業(yè)務(wù)流程越來越復(fù)雜,和周邊子模塊一堆集成,一堆的后臺隊列任務(wù),任何一塊都可能出問題。

舉幾個例子:

技術(shù)支持:呀,透傳云又傳不了數(shù)據(jù)了?NB模塊下發(fā)命令又發(fā)不下去了?設(shè)備怎么添加失敗啊?

開發(fā)人員:好,我查一查。

開發(fā)人員A:哎哎哎,世超你看看看 API 是不是獲取數(shù)據(jù)有問題啊,志遠(yuǎn)NB服務(wù)器是不是停了啊。。。。。

針對某些業(yè)務(wù),在流程上當(dāng)然可以采取相對的策略來保證,但從開發(fā)的角度來說,任何規(guī)定都無法保證一定不會發(fā)生錯誤,老虎也有打盹的時候,我只相信代碼。

代碼方面:

沒事不要亂try catch 尤其是 API 異常都拋出來怎么了 一個e.getMessage包裝到data數(shù)據(jù)區(qū)再加個錯誤碼怎么了? 直接拋到最上層用統(tǒng)一的全局異常處理去處理,里面做機(jī)制比如說:郵件或微信推送到開發(fā)組長和開發(fā)人員那里。(尤其是后臺隊列之類的操作)

新手最容易犯的錯誤,到處捕獲異常,到處加空判斷,自以為寫出了“健壯”的代碼,實(shí)際上完全相反。導(dǎo)致的問題,第一代碼可讀性很差,你如果工作了看到一半代碼是try-catch空判斷你會同意我的觀點(diǎn)的,第二更加重要的掩蓋了很多錯誤,日志是不會有人看的,我們的目的是盡早讓錯誤拋出來。

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

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/69095.html

相關(guān)文章

  • 升級 Java 編程規(guī)范的6個約定

    摘要:對變量對象或者函數(shù)等進(jìn)行命名時,選擇能清晰表達(dá)其用途的名字。其實(shí),測試方法名應(yīng)該明確指出測試的內(nèi)容與條件。和這種命名方式是時代的前朝遺物。使用自己的異常類型筆者又一次錯誤地認(rèn)為這一開發(fā)習(xí)慣是業(yè)內(nèi)的共識。 作為 Java 開發(fā)人員,我們會遵循一系列的編碼風(fēng)格和開發(fā)習(xí)慣。習(xí)慣使然是一方面,另一方面,我們也從不停下腳步質(zhì)疑這些習(xí)慣。一段時間以后,筆者養(yǎng)成了一些不同于常人的編碼風(fēng)格和開發(fā)習(xí)慣。...

    taowen 評論0 收藏0
  • 使用Netty,我們到底在開發(fā)些什么?

    摘要:比如面向連接的功能包發(fā)送接收數(shù)量包發(fā)送接收速率錯誤計數(shù)連接重連次數(shù)調(diào)用延遲連接狀態(tài)等。你要處理的,就是心跳超時的邏輯,比如延遲重連。發(fā)生異常后,可以根據(jù)不同的類型選擇斷線重連比如一些二進(jìn)制協(xié)議的編解碼紊亂問題,或者調(diào)度到其他節(jié)點(diǎn)。 在java界,netty無疑是開發(fā)網(wǎng)絡(luò)應(yīng)用的拿手菜。你不需要太多關(guān)注復(fù)雜的nio模型和底層網(wǎng)絡(luò)的細(xì)節(jié),使用其豐富的接口,可以很容易的實(shí)現(xiàn)復(fù)雜的通訊功能。 和...

    DesGemini 評論0 收藏0
  • 使用Netty,我們到底在開發(fā)些什么?

    摘要:比如面向連接的功能包發(fā)送接收數(shù)量包發(fā)送接收速率錯誤計數(shù)連接重連次數(shù)調(diào)用延遲連接狀態(tài)等。你要處理的,就是心跳超時的邏輯,比如延遲重連。發(fā)生異常后,可以根據(jù)不同的類型選擇斷線重連比如一些二進(jìn)制協(xié)議的編解碼紊亂問題,或者調(diào)度到其他節(jié)點(diǎn)。 在java界,netty無疑是開發(fā)網(wǎng)絡(luò)應(yīng)用的拿手菜。你不需要太多關(guān)注復(fù)雜的nio模型和底層網(wǎng)絡(luò)的細(xì)節(jié),使用其豐富的接口,可以很容易的實(shí)現(xiàn)復(fù)雜的通訊功能。 和...

    MSchumi 評論0 收藏0
  • 我的前端編碼習(xí)慣 —— js篇

    摘要:文件中的代碼塊可用以下代碼塊包裹,以減少全局污染。命名規(guī)則原則盡量避免潛在命名沖突,避免過于精簡,應(yīng)見名知意。必須與共同使用的構(gòu)造函數(shù)名應(yīng)以大寫字母開頭。變量所有的變量必須在使用前進(jìn)行聲明。僅在函數(shù)和構(gòu)造器內(nèi)使,以明確的上下指向。 代碼格式規(guī)范 1.html中外部腳本引入盡量放在尾部。 2.一個html文件中只寫一個代碼塊。 3.JS文件中的代碼塊可用以下代碼塊包裹,以減少全局污染。 ...

    LancerComet 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<