架構搭建的一個關鍵詞就是平衡

2020-12-26 07blog

架構是什麼

我們總在說,我要做一個架構師,或者某某系統的架構是什麼什麼等。那麼,架構到底是什麼?

一個項目,總是為了支撐某些業務場景而存在的。概括地來說,技術框架加上業務邏輯,就構成了項目。反過來,把一個項目中的業務邏輯剝離,只留下無關業務的技術框架,那麼,就稱之為架構。架構師的職責,就是運用各種技術或設計方法,把這套技術框架搭建出來。

那麼,該如何搭建一個技術框架呢?

1. 滿足業務場景。我們說,項目是為支持業務場景的,而技術架構,又是為支撐上層業務邏輯的。所以,搭建架構時,第一個要考慮的就是,要滿足業務場景,要考慮到業務的複雜程度,數據規模大小等。

2. 結合實際成本。那是不是說只要滿足業務場景就OK了呢?並不是。假設某種業務場景,比如說商城,可能使用分布式微服務框架才能滿足其高並發和高可用。但奈何老闆原來就是樓下開超市的,對於網際網路的理解僅限於拼多多砍價和觀看美女直播。他只給了你兩個人,並要求一個月上線。那這時候,你再用分布式微服務的架構顯然是不合適的,因為壓根做不完。

所以,在制定架構時,業務場景是一個主要因素,比如業務的複雜程度,但是,也要考慮其他的成本,比如人力成本,時間成本,伺服器開銷等。最終,我們需要把所有的制約因素都考慮到,並進行一個平衡。

這也就是我們常說的,架構沒有最好的,只有最合適的。平衡,是架構師的一門藝術,一個最核心的關鍵詞。

平衡

架構的演進

聊到架構的演進是,我們要說的第一個問題是:架構演進的原動力,就是業務場景的催化。當架構無法滿足當前業務場景時,架構師就不得不去嘗試尋找一種新的架構,來代替原來的架構。所以,架構是由業務場景催化而來的。

先來縱觀一下網際網路架構的整體演進進程,如下:

架構演進

由最早的單體架構,轉到水平分層架構或面向服務的架構,再到微服務架構,到服務網格架構。

單體架構的優勢

單體架構是非常簡單的,通常它會運行在某個容器裡,向上為app,網頁等前端項目提供數據接口,向上則和資料庫等數據存儲做交互,本身則包含一些或簡單或複雜的業務邏輯。它的優點就是:

1. 開發簡單。

2. 測試簡單。

3. 部署簡單。

4. 擴展簡單。

這裡的擴展指的是,我們可以很輕鬆的利用nginx等代理工具,把分布在一臺或多臺伺服器上的單體服務組合成一個整體來對外提供服務,這種方式,可以應對一定的並發,以及提升一定的可用性。

事實上,除了上述優勢外,單體架構還有一個不太容易被發現的隱藏優勢,即性能優勢。為什麼呢?我們先不考慮高並發等場景,單從一個請求的請求鏈路來說,對於單體架構,它的請求鏈路就是最簡單的。其它架構,如微服務,引入了服務之間交互的網絡開銷。所以,就單個請求來說,在不考慮並發的情況下,單體架構的性能一定是最優的。

水平分層架構和面向服務架構

單體架構的優勢就是簡單。但是,當業務場景逐漸複雜化時,單體架構下的項目內部,就會變得臃腫,代碼之間的耦合性也會變得極強,進而導致開發和維護都變得困難。於是,我們自然想到了,要對項目進行拆分。

拆分可以是水平的,也可以是垂直的。

事實上,這和資料庫的拆分的相通的。假設我們的資料庫數據量大,要做拆分時,一種是可以按照業務進行分庫,其實就是垂直拆分,另一種則是對某個單表數據進行分表,也就是水平拆分。

對於架構來說,也是一樣的。對於單體架構,從功能維度進行拆分,也就是水平拆分,就形成了水平分層架構,從業務維度進行垂直拆分,就形成了SOA面向服務架構。這和資料庫的拆分,在思想上其實是一致的。

水平拆分
垂直拆分

相關焦點

  • ASP.NET開發中的三層架構搭建實例解析
    在軟體開發設計中,三層結構是比較典型的開發模式,今天和大家來分享一下三層結構的概念,三層結構的優點、分層式結構缺陷、三層架構的適用場合以及怎樣在VS中搭建一個三層架構。如果在表示層中需要增加一個功能,為保證其設計符合分層式結構,可能需要在相應的業務邏輯層和數據訪問層中都增加相應的代碼。
  • 區塊鏈項目搭建海外架構模式避免風險
    通常出海的區塊鏈ICO項目都會進行海外架構搭建,常見的是雙重架構。有的項目出於運作考慮,會進行多重架構搭建。海外架構的好處:(1)規避風險,便於後期做法律合規,符合現行監管政策。(2)保持隱秘性,保護投資人信息,更好規避風險。 目前出海的區塊鏈ICO項目通常選擇註冊新加坡基金會。
  • 企業海外併購上市,如何搭建公司架構?
    那麼企業在海外併購的過程中,該如何搭建交易架構? 搭建海外投資架構的優勢 跨境併購的交易架構可簡單劃分為直接投資架構和間接投資架構。 正是基於以上原因,間接投資架構成為大型海外併購的首選,在實踐中,需要根據實際情況對股權架構進行規劃和設計。
  • 知乎CTO李大海:謝邀,來分享下內容社區的AI架構搭建與應用
    知乎 CTO 來分享下內容社區的 AI 架構搭建與應用。「在信息爆炸的網際網路海洋中,有價值的信息仍然是稀缺的」。知乎的誕生源於這樣一個非常簡單的初心。而在挖掘真正有價值的信息過程中,知乎很好地利用了 AI 技術。
  • 床長人工智慧教程——5分鐘搭建MVP架構
    寫在前面寫在前面接到公司的需求,把之前那個實在維護不動的項目重構一下之前項目是沒有架構寫的,跟平鋪差不多,臨時組建了個人的開發小組,確定架構的時候全票通過了。之前雖然用過,可總意會不到的精髓所在,反而經常被繞暈。也看了很多關於的技術博客。
  • 科德寶宜合亞洲FIT Asia踐行IT基礎架構國際化標準
    資訊時代以數據安全為全球企業競爭的核心,安全、穩定的IT信息系統更是企業正常運轉的基本保證,因此,企業應給予IT基礎架構等同於企業業務經營的足夠重視。對一個現代化企業來說,良好的IT系統應該具有穩定、流暢、可拓展的特點,不僅可滿足當下的工作需求,更要能著眼行業未來的發展,可以及時進行更新維護,融合最新的產業元素,確保產品服務不被市場淘汰。
  • 20關鍵詞(上)
    關鍵詞2 雙面的博弈 [調研情況] 數字銀行增多。招行與網銀在線獲批籌建招商拓撲銀行,零售銀行巨頭與數字科技巨頭探索合作共贏新模式。直銷銀行藉助網際網路渠道直達零售客群,並通過標準化普惠產品獲客粘客。 經南都調研,超兩成消費者「不清楚直銷銀行」。消費者普遍不了解直銷銀行的定位和功能。
  • VIE架構十問十答
    2、VIE架構通常如何搭建?一般來說,搭建VIE架構的主體公司可分為境外特殊目的公司(SPV)、境內外商獨資企業(WFOE)、境內運營實體(VIE/OpCo)等三大部分。具體搭建步驟包括:——國內創始人團隊(即中國境內運營實體的實際控制人)在境外(通常是在開曼群島(Cayman Islands)或英屬維京群島(BVI)等避稅天堂)設立個人特殊目的公司;——以個人特殊目的公司、外幣投資人為股東,在境外子公司作為境外上市主體或擬上市主體,向境內運營實體輸送融資;——由於香港公司在大陸地區所設的公司滿足條件的可享有5%的稅收優惠
  • 網頁製作與網站搭建步驟教程
    現代建設網站,只需要一個鳴蟬建站系統的帳號,註冊一個帳號直接用網站模板建站,基本上幾十秒就可以做出網站的雛形,隨後再添加相關的產品信息和內容,即可建成網站。鳴蟬智能建站特點: 雲計算架構 建站系統採用雲計算的架構,從安全防護到網站訪問速度有保障,它是由雲計算的基礎架構決定的。
  • 直播軟體搭建,高並發的產生原因與解決方式
    直播軟體搭建中,經常能聽到運營商和開發團隊討論高並發的問題,很多運營商並不在乎、不重視直播軟體的高並發能力,這其實是錯誤的。直播軟體搭建不好,高並發能力差,不僅會降低用戶的使用體驗,還有可能因為伺服器過載造成系統的損害,今天就給大家講解一下高並發產生的原因以及解決的方法。
  • 架構就是畫框框?
    有個群裡的同學發了一個「某某測試中臺」的架構圖,長得是這樣嬸兒的:我早有一個論斷:這種畫一大堆框框就表示他根本沒想清楚到底要幹啥
  • 零成本搭建現代博客之SEO優化篇
    這個系列不少的東西需要你科學上網才能訪問,也就是你需要一把梯子[2]。如果你對SEO並不了解,請先看這篇《什麼是SEO》[3]。在搭建好我們的博客後,一頓優化猛如虎,一看訪客還為零。如何能讓搜尋引擎給我們帶來免費而源源不斷的SEO流量?如何給新建的站做基本的SEO?如何分析老站的流量現狀通過一些優化方法來提高SEO流量?
  • 李金早:當今旅遊的關鍵詞
    世界旅遊聯盟作為中國發起成立的第一個全球性、綜合性、非政府、非營利國際旅遊組織,以「旅遊讓世界更美好」為核心理念,旨在為全球旅遊業界搭建一個共商、共建、共享的平臺,推動全球旅遊業向更加開放、包容、普惠、平衡的方向發展。當前世界旅遊發展的態勢如何?中國旅遊發展有何特點?世界旅遊聯盟可以發揮什麼作用?這都是全球旅遊業界關注的問題。在此,我擬與各位分享幾個關鍵詞。
  • 北易信息:如何給一個企業的網站做推廣
    那麼,如何給一個企業的網站做推廣。北易信息:如何給一個企業的網站做推廣一、網站在建設當中如何做推廣1、網站架構搭建企業在建設網站的時候就可以開始推廣網站了,也就是給網站做好優化的基礎,這樣網站在上線後,就可以藉助網站架構的優勢,快速讓網站增加被搜尋引擎收錄的機會。
  • 阿里P8聯合多位業界大佬整合的架構寶典,真正的漲薪秘籍
    架構是一個綜合性很強的專業領域。對閉環反饋的關注和投入,可以作為衡量一個優秀軟體研髮型公司的重要指標。同樣,.是否具備充分的閉環反饋意識也是衡量一個優秀架構師的重要指標。第4章: 複雜與架構演進的關係路漫漫其修遠兮,處理軟體系統的複雜性是一個永恆的話題。
  • 中國企業如何運用VIE架構「走出去」?企業為何要設置多次BVI/開曼...
    VIE全稱Variable Interest Entities,直譯為"可變利益實體",在國內常被稱為"協議控制"、"合約安排"、"結構性合約"等,是指境外註冊的上市實體與境內的業務運營實體相分離,境外的上市實體通過協議的方式控制境內的業務實體,業務實體就是上市實體的VIEs(可變利益實體)。
  • 華興證券:VIE架構十問十答
    2、VIE架構通常如何搭建?一般來說,搭建VIE架構的主體公司可分為境外特殊目的公司(SPV)、境內外商獨資企業(WFOE)、境內運營實體(VIE/OpCo)等三大部分。具體搭建步驟包括:——國內創始人團隊(即中國境內運營實體的實際控制人)在境外(通常是在開曼群島(Cayman Islands)或英屬維京群島(BVI)等避稅天堂)設立個人特殊目的公司;——以個人特殊目的公司、外幣投資人為股東,在境外子公司作為境外上市主體或擬上市主體,向境內運營實體輸送融資;
  • 淺談區塊鏈技術底層架構之HonorDecent公鏈架構
    當大家單獨說到區塊鏈的時候,就是指的區塊鏈技術,是實現了數據公開、透明、可追溯的產品的架構設計方法,算作廣義的區塊鏈。而當在具體產品中談到區塊鏈的時候,可以指類似比特幣的數據存儲方式,或許是資料庫設計,或許是文件形式的設計,這算作狹義的區塊鏈。
  • 主體架構與情節編織(一)
    就是香山腳下的曹雪芹故居嗎?已無從考證。大多數紅學家認為,悼紅軒是虛構的,根本就不存在。既然如此,曹雪芹最後的日子會在哪裡?虛構的悼紅軒與真實的曹雪芹淵源何在? 誠然,文學離不開虛構。《紅樓夢》的故事,既是「夢境」與「幻境」的交織,又是為情、為文、為理的追夢,兩者既同曲相和,又各有妙音。這「幻中有真」的審美意境,本就是一種生活的真實與存在。
  • 關鍵詞營銷密技大公開
    Google上搜尋「玫瑰」就會出現在前10名的SERP ranking(Search Engine Result Page Ranking:搜尋引擎結果頁排名)的網頁,那麼把這個心鏈圖轉換成你網站的架構,去架設出一個新的網站,或是新的博客。