架構一:單體架構

1.簡要說明

在項目中,我們通常將需求分爲三個部分:數據庫、服務器處理、前端展示。如果這些需求都實現在了同一個應用中,那麼這個項目就是單體架構的。在項目發展初期,由於所有的業務邏輯寫在一個應用中,開發、測試、部署變得簡單高效。但是,隨着業務不斷擴大、需求不斷增多,代碼會越來越臃腫,系統變得難以維護。試想,當只需要修改一個很小的功能時,由於所以功能模塊都寫在同一個應用,重新部署會影響其他功能正常運行。另外,當項目太過龐大臃腫時,系統優化也是一道難題。每個功能模塊的併發量、使用場景、消耗的資源類型都不同,但是它們都在同一個應用中,這就使得我們對各個功能模塊的容量很難做出評估,難以對個別模塊進行優化。

2.流程圖

在這裏插入圖片描述

3.問題

  1. 隨着用戶增長,tomcat和數據庫之間相互競爭服務器資源,單機性能不足以支撐業務,例如:不管是數據庫還是應用都要消耗系統內存、CPU資源,當資源出現瓶頸,系統就會出現不能正常訪問的問題。
  2. 服務器掛掉,不管是數據庫還是應用都無法正常訪問。
  3. 代碼會越來越臃腫,系統變得難以維護。

4.優化辦法。

把Tomcat和數據庫分別安置在獨立的服務器,可以顯著提高兩者的性能。

5.涉及技術點

  1. DNS介紹
    DNS( Domain Name System)是“域名系統”的英文縮寫,是一種組織成域層次結構的計算機和網絡服務命名系統,使用的是UDP協議的53號端口,它用於TCP/IP網絡,它所提供的服務是用來將主機名和域名轉換爲IP地址的工作。DNS就是這樣的一位“翻譯官”,如圖所示。
    在這裏插入圖片描述
發佈了208 篇原創文章 · 獲贊 129 · 訪問量 111萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章