亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Java開發(fā)熟手該當(dāng)心的11個錯誤

yacheng / 1737人閱讀

摘要:不貼近真實環(huán)境的性能測試,可能會帶來不可預(yù)料的性能拓展和多線程問題。也需要對負(fù)載均衡器進(jìn)行測試,以確保它能正常工作,使每個節(jié)點(diǎn)達(dá)到平衡。負(fù)載均衡器,需要的節(jié)點(diǎn)數(shù)節(jié)點(diǎn)類型,比如是型還是型,以及聚類要求。

生產(chǎn)過程中出現(xiàn)的問題正逐漸得到中層和最高管理層的重視。不管是身為開發(fā)人員還是架構(gòu)師,下列的事項都應(yīng)該得到你足夠的重視以避免陷入未來的尷尬境地。你也可以把它作為排查問題的便簽。

1、不在屬性文件或XML文件中外化配置屬性。

比如,沒有把批處理使用的線程數(shù)設(shè)置成可在屬性文件中配置。你的批處理程序無論在DEV環(huán)境中,還是UAT(用戶驗收測試)環(huán)境中,都可以順暢無阻地運(yùn)行,但是一旦部署在PROD 上,把它作為多線程程序處理更大的數(shù)據(jù)集時,就會拋出IOException,原因可能是JDBC驅(qū)動版本不同,也可能是#2中討論的問題。如果線程數(shù)目 可以在屬性文件中配置,那么使它成為一個單線程應(yīng)用程序就變得十分容易了。我們不再需要為了解決問題而反復(fù)地部署和測試應(yīng)用了。這種方法也同樣適用于配置 URL、服務(wù)器和端口號等。

2、測試中使用的數(shù)據(jù)集規(guī)模不合適。

比如,生產(chǎn)過程中一個 典型的場景就是只使用1到3個賬戶進(jìn)行測試,而這個數(shù)量本應(yīng)是1000到2000個的。在做性能測試時,使用的數(shù)據(jù)必須是真實并且未經(jīng)裁剪的。不貼近真實 環(huán)境的性能測試,可能會帶來不可預(yù)料的性能、拓展和多線程問題。只有使用更大規(guī)模的數(shù)據(jù)集對應(yīng)用程序進(jìn)行測試,才能保證它正常運(yùn)行并滿足非功能屬性的 SLAs(服務(wù)水平標(biāo)準(zhǔn))。

3、天真地認(rèn)為應(yīng)用程序中所調(diào)用的外部和內(nèi)部服務(wù)是可靠的,并且是始終可用的。

不允許出現(xiàn)服務(wù)調(diào)用超時和重試,將會對應(yīng)用程序 的穩(wěn)定性和性能造成不利地影響。需要進(jìn)行適當(dāng)?shù)姆?wù)中斷測試。這一點(diǎn)十分重要,因為如今的應(yīng)用程序多是分布式并且面向服務(wù)的,都需要大量的網(wǎng)絡(luò)服務(wù)。無限 地請求不可用的服務(wù)會損害應(yīng)用程序。也需要對負(fù)載均衡器進(jìn)行測試,以確保它能正常工作,使每個節(jié)點(diǎn)達(dá)到平衡。

4、沒有遵循最低限度的安全要求。

正如上文提到,網(wǎng) 絡(luò)服務(wù)隨處可見,從而使得黑客可以輕易地利用它進(jìn)行拒絕服務(wù)攻擊。所以,在使用安全套接層時,必須完成基本的驗證并使用Google skipfish等工具進(jìn)行滲透測試。不安全的應(yīng)用程序不僅會威脅其自身穩(wěn)定性,還可能會因為數(shù)據(jù)完整性問題對公司的聲譽(yù)造成負(fù)面影響,例如出現(xiàn)了客戶 “A”可以瀏覽客戶“B”數(shù)據(jù)的情況。

5、沒有進(jìn)行跨瀏覽器的兼容性測試。

如今的網(wǎng)絡(luò)應(yīng)用程序多是豐富的單頁應(yīng)用程序,它們使用JavaScript編程語言以及angular js這樣的框架。為了使你建設(shè)的網(wǎng)站能夠流暢地運(yùn)行于不同的設(shè)備和瀏覽器之間,必須實現(xiàn)與之對應(yīng)的設(shè)計。所以為了確保你的應(yīng)用程序可以適用于所有設(shè)備和瀏 覽器,必須對其進(jìn)行兼容性測試。

6、沒有外化可能經(jīng)常發(fā)生變化的商業(yè)規(guī)則。

例如稅法、政府或行業(yè)相關(guān)要求、分類法等??梢允褂孟馜rools這樣的引擎來處理商業(yè)規(guī)則,它幫助你通過存入數(shù)據(jù)庫或 excel的形式,來外化這些商業(yè)規(guī)則。企業(yè)掌握了這些商業(yè)規(guī)則,就能以最少的變化和測試完成對稅法或相關(guān)要求地快速反應(yīng)。

7、沒有提供下列文檔

編寫單元測試文檔并使其擁有良好的代碼覆蓋率。

集成測試。

一個綜合的或者百科全書式的頁面列出了所有的軟件構(gòu)件,比如類、腳本、配置文件等,而這些構(gòu)件要么是被修改了的,要么是新創(chuàng)建的。

高層次的概念圖描述了所有的組件,交互和結(jié)構(gòu)。

而基礎(chǔ)文檔則告訴開發(fā)者“如何結(jié)合數(shù)據(jù)源的詳細(xì)信息來搭建開發(fā)環(huán)境”。

除了COS(滿足的條件)這種由MindMap創(chuàng)建的形式之外,
敏捷開發(fā)
中還有1和2這兩種主要的文檔形式。

8、沒有適當(dāng)?shù)臑?zāi)害恢復(fù)計劃以及系統(tǒng)監(jiān)視和歸檔策略。

在項目截止日期來臨之際,常常因為急于部署項目而遺漏了這些事項。沒有通過Nagios和Splunk建立合適的系統(tǒng)監(jiān)視機(jī)制不僅會威脅到應(yīng)用程序的穩(wěn)定性,還會妨礙目前的診斷和將來的改進(jìn)工作。

9、沒有為數(shù)據(jù)庫表設(shè)計方便整理的列

比如created_datetm、update_datetm、created_by、updated_by和時間戳,也沒有提供有條理的刪除記錄列,如可以取‘Y’或‘N’的‘deleted’列或是可以取‘Active’或‘Inactive’的 ‘record_status’列。

10、沒有制定適當(dāng)?shù)幕爻酚媱潯?/b>

導(dǎo)致在系統(tǒng)發(fā)生故障時,沒有辦法將系統(tǒng)恢復(fù)到部署前的穩(wěn)定狀態(tài)。這個計劃需要反復(fù)推敲并有相關(guān)團(tuán)隊簽字保證。計劃包括了,退回到軟件先前的版本,去除插入到數(shù)據(jù)庫中的所有數(shù)據(jù)以及屬性文件的所有條目。

11、在項目開始前沒有制定能力計劃。

現(xiàn)如今,在說明對平臺的要求時,僅僅說“需要一臺Unix計算機(jī),一個Oracle數(shù)據(jù)庫服務(wù)器,一個JBoss應(yīng)用程序服務(wù)器”是遠(yuǎn)遠(yuǎn)不夠的。你的要求必須精確到

操作系統(tǒng)的特定版本,JVM等。

有多少內(nèi)存(包括物理內(nèi)存,JVM堆內(nèi)存,JVM棧內(nèi)存和JVM永久代的空間)。

CPU(內(nèi)核數(shù))。

負(fù)載均衡器,需要的節(jié)點(diǎn)數(shù)、節(jié)點(diǎn)類型,比如是active/active型還是active/passive型,以及聚類要求。

文件系統(tǒng)要求,例如,你的應(yīng)用程序可能會收集生成的報告并將其保存一年,之后 才進(jìn)行歸檔。這樣的話,你就需要有足夠的硬盤空間。有些應(yīng)用程序要求產(chǎn)生數(shù)據(jù)提取文件,并將它們暫時儲存以供其他系統(tǒng)進(jìn)程或數(shù)據(jù)倉庫系統(tǒng)用來做多維分析報 告。還有些數(shù)據(jù)文件是基于安全文件傳輸協(xié)議的,它們或來自內(nèi)部系統(tǒng),或來自外部系統(tǒng),并且在歸檔前需要被保存12到36個月。

下面的12來自“David DeCesare”發(fā)自“java.dzone”的評論:

12、“不在工作時使用最好的工具”。

很多情況下,開發(fā)者會在生產(chǎn)系統(tǒng)中使用一門想要學(xué)習(xí)的語言或某種工具。通常這不是最好的選擇。比如,為已經(jīng)實際上是關(guān)系型的數(shù)據(jù)使用NoSQL數(shù)據(jù)庫。請記住,無論你采用哪種工具,都需要在未來3到5年(甚至更長的時期)內(nèi)維護(hù)你的產(chǎn)品。

13、在16個關(guān)鍵技術(shù)領(lǐng)域缺少充足的知識儲備。

這些領(lǐng)域包括識別并修復(fù)1)“并發(fā)問題”、2)事務(wù)問題、3)性能問題。很多次面試中,我靠著這3個方面的知識拿到了新的合同。

原文鏈接: dzone 翻譯: ImportNew.com - rookie_sam
譯文鏈接: http://www.importnew.com/15346.html

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

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

相關(guān)文章

  • 成為前端,你不學(xué)東西,以及不事兒!

    摘要:如果看視頻能夠成為高手,那每一個球迷都應(yīng)該是梅西。克服心理障礙前端的飛速發(fā)展,不僅僅是初學(xué)者,哪怕熟手都會焦慮感覺很多東西都不會。 很多前端都想找一個學(xué)習(xí)計劃,然后認(rèn)真學(xué),成為一個大牛;他們迫切的想知道自己該學(xué)什么,然后看什么書,有什么資源可以用! 我今天要告訴你的是,你不要看什么書,不要做什么事!因為如果你再不恰當(dāng)?shù)碾A段,看了那些看起來很正確的金科玉律一般的書籍,除了打消你學(xué)習(xí)的興趣...

    mcterry 評論0 收藏0
  • 讀書筆記:編寫高質(zhì)量javascript68方法

    摘要:第條盡量少使用全局對象避免聲明全局變量盡量聲明局部變量避免對全局變量增加屬性第條始終聲明局部變量第條避免使用語句第條熟練使用閉包的函數(shù)值包含了比調(diào)用他們時執(zhí)行所需要的代碼還要更多的信息。那些在其所涵蓋的作用域內(nèi)跟蹤變量的函數(shù)稱為閉包。 書還沒看完。一遍看,一遍寫讀書筆記。 這本書的序是JavaScript之父Brendan Eich寫的,作者是JavaScript標(biāo)準(zhǔn)化委員會專家??上?..

    Vicky 評論0 收藏0
  • 當(dāng)心Python函數(shù)可變默認(rèn)參數(shù)(list,set,dict…)陷阱

    摘要:下面我們看看使用可變默認(rèn)參數(shù)時會出現(xiàn)什么莫名其妙的狀況。這就意味著如果你使用可變默認(rèn)參數(shù)并改變它,所有調(diào)用該函數(shù)的結(jié)果都是這個可變對象。同時也有注意,該函數(shù)要傳遞一個對象作為第二個參數(shù),因為函數(shù)中對它進(jìn)行了操作。 showImg(https://segmentfault.com/img/bVbrFS3?w=762&h=505); 絕大多數(shù)情況下,Python是一個干凈具有一致性的語言。...

    Integ 評論0 收藏0
  • 從0開始學(xué)JAVA(1) 數(shù)據(jù)類型

    摘要:且可以使用進(jìn)行中文保存,是因為使用這種進(jìn)制的編碼。那么怎么解決呢看出來區(qū)別了嗎由于的自動類型轉(zhuǎn)換,會轉(zhuǎn)換為類型,所以數(shù)據(jù)溢出的問題就解決了。除非到不得已情況,不然不要輕易使用強(qiáng)制類型轉(zhuǎn)換。 Java語言中對于數(shù)據(jù)類型分為2種 基本數(shù)據(jù)類型(一些具體的數(shù)字單元,例如 1 、 1.1、) 數(shù)值型: 整形:byte、 short、int、 long -->默認(rèn)值:0 浮點(diǎn)型 ...

    bigdevil_s 評論0 收藏0
  • Java 高效編程(Effective Java)中文第三版

    摘要:來源前條來源一書英文版已經(jīng)出版,這本書的第二版想必很多人都讀過,號稱四大名著之一,不過第二版年出版,到現(xiàn)在已經(jīng)將近年的時間,但隨著,,,甚至的發(fā)布,語言發(fā)生了深刻的變化。譯者在這里第一時間翻譯成中文版。供大家學(xué)習(xí)分享之用。 來源:sjsdfg/effective-java-3rd-chinese前 51 條來源:Effective Java, Third Edition 《Effec...

    ysl_unh 評論0 收藏0

發(fā)表評論

0條評論

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