激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - Java 開發的幾個注意點總結

Java 開發的幾個注意點總結

2020-06-15 12:18颯然Hang JAVA教程

這篇文章主要介紹了Java開發的幾個注意點的相關資料,需要的朋友可以參考下

1. 將一些需要變動的配置寫在屬性文件中

比如,沒有把一些需要并發執行時使用的線程數設置成可在屬性文件中配置。那么你的程序無論在DEV環境中,還是TEST環境中,都可以順暢無阻地運行,但是一旦部署在PROD上,把它作為多線程程序處理更大的數據集時,就會拋出IOException,原因也許是線上環境并發造成也許是其他。如果線程數目可以在屬性文件中配置,那么使它成為一個單線程應用程序就變得十分容易了。我們不再需要為了解決問題而反復地部署和測試應用了。這種方法也同樣適用于配置 URL、服務器和端口號等。

這里推薦使用屬性文件外化這些配置,文件格式使用properties、yaml、hocon、json都可以。下面的類實現了對這些格式的文件的spring注入支持,包括占位符支持。

https://github.com/superhj1987/awesome-libs/blob/master/src/main/java/me/rowkey/libs/spring/config/AwesomePropertyPlaceholderConfigurer.java

2. 測試中盡可能模擬線上環境

生產過程中一個典型的場景就是只使用1到3個帳戶進行測試,而這個數量本應是1000到2000個的。在做性能測試時,使用的數據必須是真實并且未經裁剪的。不貼近真實環境的性能測試,可能會帶來不可預料的性能、拓展和多線程問題。這里也可以采取預發布環境的方式來解決部分問題。

3. 對于所有外部調用以及內部服務都要做容錯處理

不管是RPC調用還是對于第三方服務的調用,都不能想當然的認為可用性是100%的。不允許出現服務調用超時和重試,將會對應用程序的穩定性和性能造成不利的影響。

4. 安全設計上一個系統要遵循最小權限原則

網絡服務隨處可見,從而使得黑客可以輕易地利用它進行拒絕服務攻擊。所以,設計系統時,需要遵循“最小權限”原則,采用白名單等方式。

5. 需要提供以下文檔

編寫單元測試文檔并使其擁有良好的代碼覆蓋率。
高層次的設計圖:描述了所有的組件,交互和結構。
詳細的設計圖:具體到代碼層面的設計,以及一些關鍵邏輯的流程。
系統組成文檔:說明系統的所有組成文件、配置文件等。
數據庫層面的dml以及ddl文檔,尤其是sql查詢語句需要經過dba或者核心開發人員的review才能夠上線。
不僅僅對于傳統的開發流程,即使對于敏捷開發,這些文檔也是必不可少的,否則在后續的維護、交接上會帶來很大的不便。

6. 做好系統關鍵功能的監控、錯誤恢復、備份等

對于系統一些至關重要的功能模塊要做好對其的監控,防止其影響系統的運行,造成不可估算的損失。另外,如果可以,監控到故障后去去試圖恢復,恢復失敗再發送告警。對于一些很重要的數據文件,還要做到冗余備份,防止發生一些突然故障造成數據丟失。

7. 數據庫設計時設計一些便于追蹤歷史、整理的列

比如create_time、update_time可以說明記錄的創建和更新時間。create_by、update_by可以說明記錄是由誰創建和更新的。

此外,刪除記錄有時候并非真正刪除,這時需要設計表示此記錄狀態的列,如可以取‘Active'或‘Inactive'的 ‘status'列。

8. 制定好項目回滾計劃

新的功能上線時,如果發生故障,沒有一份回滾計劃,那么可能會手忙腳亂而造成線上服務一段時間不可用。有一個良好的回滾計劃,可以讓你能夠有條不紊的執行相關操作,在可控時間內將系統恢復到一個可運行的狀態。

9. 項目上線前要做好量化分析

對于項目中用到的內存、數據庫、文件、緩存等,要做好量化分析。預估出未來一段時間的空間占用,給運維分配機器時一個參考。防止,由于數據量增長過快,導致存儲不夠。這一點是非常重要的,不然很容易造成線上服務不可用。

10. 制定好系統的部署計劃。

系統部署的平臺是一個至關重要的部分。對于部署平臺的描述,不能僅限于一臺服務器、兩個數據庫這個層面,至少需要包括

  1. 操作系統的特定版本,JVM等。
  2. 有多少內存(包括物理內存,JVM堆內存,JVM棧內存和JVM永久代的空間)。
  3. CPU(內核數)。
  4. 負載均衡器,需要的節點數、節點類型,比如是Active-Standby型還是Active-Active型。
  5. 文件系統要求,例如,你的應用程序可能會收集生成的日志并將其保存很長的周期,之后才進行歸檔。這樣的話,你就需要有足夠的硬盤空間。

11. 選擇最合適的工具/技術

很多情況下,開發者會在生產系統中使用一門想要學習的語言或某種工具。通常這不是最好的選擇。比如,為已經實際上是關系型的數據使用NoSQL數據庫。不管是語言還是工具,都有其適用的場景。不能求新,也不能以“自我”為標準。

12. 在一些關鍵技術領域具有充足的知識儲備。

設計模式
JVM調優
多線程“并發問題”
事務問題,包括分布式事務
性能問題,包括GC、計算等
緩存

 通過此文希望能幫助開發Java 程序的朋友,謝謝大家對本站的支持!

延伸 · 閱讀

精彩推薦
  • JAVA教程深入解析JVM對dll文件和對類的裝載過程

    深入解析JVM對dll文件和對類的裝載過程

    這篇文章主要介紹了JVM對dll文件的裝載和對類的裝載過程,針對Java在Windows下的一些運行情況作出講解,需要的朋友可以參考下 ...

    801976753222020-03-01
  • JAVA教程Java實現圖片對比功能

    Java實現圖片對比功能

    個人從來沒有研究過圖像學,也沒看過什么論文或者相關文檔,寫這個完全是靠google和百度,自己寫了個實驗了下,測試用例也少,估計有大BUG的存在,所...

    hebedich2522019-11-28
  • JAVA教程java中break和continue源碼解析

    java中break和continue源碼解析

    這篇文章主要針對java中break和continue的區別進行詳細介紹,幫助大家更好的學習了解java中break和continue源碼,感興趣的小伙伴們可以參考一下 ...

    mufeng_慕楓5012020-05-18
  • JAVA教程java之this關鍵字用法實例分析

    java之this關鍵字用法實例分析

    這篇文章主要介紹了java之this關鍵字用法實例分析,較為詳細的講述了Java中this關鍵字的用法及適用范圍,并附帶實例程序加以說明,需要的朋友可以參考下 ...

    shichen20143952019-12-01
  • JAVA教程java synchronized關鍵字的用法

    java synchronized關鍵字的用法

    synchronized關鍵字我們大家都知道是線程同步關鍵字.總結一下日常的使用方法,還有一個坑. ...

    wulei2682020-04-24
  • JAVA教程java反射機制示例

    java反射機制示例

    這篇文章主要介紹了java反射機制示例,需要的朋友可以參考下 ...

    Java教程網1742019-11-21
  • JAVA教程java交換排序之奇偶排序實現方法

    java交換排序之奇偶排序實現方法

    這篇文章主要介紹了java交換排序之奇偶排序實現方法,實例分析了奇偶排序的原理與具體實現技巧,非常具有實用價值,需要的朋友可以參考下 ...

    Benjamin_whx3762019-12-10
  • JAVA教程java分形繪制科赫雪花曲線(科赫曲線)代碼分享

    java分形繪制科赫雪花曲線(科赫曲線)代碼分享

    部分與整體以某種形式相似的形,稱為分形,科赫曲線是一種外形像雪花的幾何曲線,所以又稱為雪花曲線,它是分形曲線中的一種,畫法如下 ...

    java技術網6752019-10-23
主站蜘蛛池模板: 狠狠干天天操 | 国产一级大片在线观看 | 国产精品午夜未成人免费观看 | 国产精品久久久久久久久久10秀 | 91性高湖久久久久久久久网站 | 久久久久国产一区二区三区不卡 | 国产啊v在线观看 | 国产视频在线一区 | 国产成人在线一区 | 狠狠操人人干 | 亚洲卡通动漫在线观看 | 深夜毛片免费看 | 狠狠撸电影 | 加勒比婷婷色综合久久 | 亚洲国产视频网 | 91网视频在线观看 | 亚洲性生活免费视频 | 黄色欧美精品 | 国产精品入口夜色视频大尺度 | 一级黄色性感片 | 免费观看视频在线观看 | 黄色网址免费在线播放 | 大学生一级毛片在线视频 | 亚洲网站在线观看 | 2017亚洲男人天堂 | 欧洲成人免费 | 久久久免费观看完整版 | 色视频在线观看 | 国产黄色一区二区 | 日韩视频一区在线 | 日日摸夜夜添夜夜添牛牛 | 免费毛片观看 | asian裸体佳人pics | 免费国产在线视频 | 国产做爰全免费的视频黑人 | 精品国产91久久久 | 久精品国产 | 黄色成人av在线 | 亚洲成人福利在线 | xxxxxx中国| 欧美曾交 |