各種系統架構的簡單介紹

2021-10-02 14:33:59 字數 1297 閱讀 2939

一.單體架構

初創小公司,前期可能只有2-3個開發人員。為了節省成本,並希望專案快速開發,快速發布上線,快速驗證市場,這個時候就可以考慮採用單體架構進行開發。

所謂單體架構,就是系統服務及資料庫等都放在同一臺伺服器上。

單體架構的優點是:

小團隊成型即可完成開發-測試-上線,而且迭代周期短,速度快,打包方便,運維省事。

是初創小公司業務發展初期最理想的架構形式。

二.集群架構

當業務不斷發展壯大,使用者訪問量不斷增加,單體架構往往會因為負載越來越高,從而面臨越來越多的挑戰。比如:系統的承載量可能會越發乏力,逐漸成為效能瓶頸;單節點宕機可能造成所有服務不可用等等,面對突如其來的一系列問題,我們該如何切入?

我們可以通過nginx負載均衡, 雙機主備與主從熱備,降低伺服器負載壓力;

通過redis快取集群為資料庫減壓等解決方案,逐步演變系統成乙個高可用的集群架構。

三.分布式架構

隨著業務發展壯大,使用者量暴漲,單節點處理能力就會成為瓶頸,如果併發量居高不下,伺服器很容易因負載過高而導致崩潰宕機。出於高併發,高可用的考慮,專案就應該演變到分布式架構了。

然而分布式環境下我們又會面臨更多的挑戰需要去應對。比如:

如何保障不論使用者請求落在哪個服務節點,檔案都能被獲取到?

如何對上下游弱依賴關係的服務節點做解耦?

如果日誌分布在不同的服務上,如何為後續的業務提供資料支撐?

如果乙個資源在同乙個時間節點上,產生了競爭該怎麼辦?

如果使用者量暴增,導致每次查詢時間慢了許多該怎麼辦?

如果下單、付款分布在不同的服務上,如何保證跨服務事務?

四.微服務架構

隨著發展,系統越來越複雜,如果分布式架構無法滿足業務要求,可以嘗試微服務架構。不過它也有自己的利弊,需要更深入的掌握微服務技術才好更靈活的權衡利弊。

如下問題都是微服務下需要思考和解決的問題:

如何做好服務登記工作?

介面異常超時怎麼破?如何確保核心主鏈路的高可用性?

如何對配置項進行中心化的管理?如何在執行期重新整理配置項?

如何設定網路請求**規則?

如何根據蛛絲馬跡進行線上異常排查?

如何無縫對接訊息中介軟體?

多種系統介紹

一 企業管理,執行中需要用到多種系統。根據企業的行業和大小需要不同的系統,下面列舉了幾種。1.erp系統 1.1 erp主要是管理生產製造的軟體。例如要製造一部手機,就需要準備外殼 電池 主機板 方案等零部件,然後有計畫有步驟的進行加工生產。大型的或者複雜的產品,生產環節就越多,erp就是專門解決製...

獲得各種系統路徑

獲取系統system32路徑 c windows system32 使用函式getsystemdirectory.cstring版封裝 cpp view plain copy static cstring getsysfolder getsystemdirectory szpath,100 retu...

各種系統的登入介面

介面效果 連線資料庫 註冊使用者和密碼 1 首先先檢查資料庫中是否有相應的資料,如果有的話提示 該使用者存在,請直接登入。private void cheak string username,string userpass throws exception else 判斷資料庫中是否有該使用者名稱和...