一步一圖,帶你了解分布式架構的前世今生

2021-01-10 51CTO

 

目錄:

什麼是分布式架構?

分布式架構的演進 分布式服務面臨的問題 什麼是分布式架構?

分布式系統(distributed system)是建立在網絡之上的軟體系統,它有兩個典型特點:

內聚性:每個資料庫分布節點高度自治,有本地的資料庫管理系統 透明性:每個資料庫分布節點對用戶的應用來說都是透明的,看不出是本地還是遠程。

也就是說,在分布式系統中,用戶感覺不到數據是分布式的,不知道數據是否分割,有無副本,不知道數據存在於哪個節點上。

簡單來說:一個分布式系統中,一組獨立的計算機展現給用戶的是一個統一的整體,就好像是一個系統似的。

如上圖所示,分布式系統作為一個整體對用戶提供服務,而整個系統的內部的協作對用戶來說是透明的,用戶就像是指使用一個mysql 一樣。

分布式架構的演進

(1)初始階段架構

特徵:應用程式,資料庫,文件等所有資源都放在一臺伺服器上。

(2)應用服務、數據服務、文件服務分離

說明:好景不長,隨著系統訪問量的再度增加,webserver機器的壓力在高峰期會上升到比較高,這個時候開始考慮增加一臺webserver。

特徵:應用程式、資料庫、文件分別部署在獨立的資源上。

(3)使用緩存改善性能

說明:系統訪問特點遵循二八定律,即80%的業務訪問集中在20%的數據上。

緩存分為本地緩存和遠程分布式緩存,本地緩存訪問速度更快但緩存數據量有限,同時存在與應用程式爭用內存的情況。

特徵:資料庫中訪問較集中的一小部分數據存儲在緩存伺服器中,減少資料庫的訪問次數,降低資料庫的訪問壓力。

(4)使用「應用伺服器」集群

說明:在做完分庫分表這些工作後,資料庫上的壓力已經降到比較低了,又開始過著每天看著訪問量暴增的幸福生活了。

突然有一天,發現系統的訪問又開始有變慢的趨勢了,這個時候首先查看資料庫,壓力一切正常,之後查看webserver,發現apache阻塞了很多的請求,

而應用伺服器對每個請求也是比較快的,看來是請求數太高導致需要排隊等待,響應速度變慢。

特徵:多臺伺服器通過負載均衡同時向外部提供服務,解決單臺伺服器處理能力和存儲空間上限的問題。

描述:使用集群是系統解決高並發、海量數據問題的常用手段。通過向集群中追加資源,提升系統的並發處理能力,使得伺服器的負載壓力不再成為整個系統的瓶頸。

(5)資料庫讀寫分離


說明:享受了一段時間的系統訪問量高速增長的幸福後,發現系統又開始變慢了,這次又是什麼狀況呢?

經過查找,發現資料庫寫入、更新的這些操作的部分資料庫連接的資源競爭非常激烈,導致了系統變慢

特徵:多臺伺服器通過負載均衡同時向外部提供服務,解決單臺伺服器處理能力和存儲空間上限的問題。

描述:使用集群是系統解決高並發、海量數據問題的常用手段。通過向集群中追加資源,使得伺服器的負載壓力不在成為整個系統的瓶頸。

(6)反向代理和CDN加速


特徵:採用CDN和反向代理加快系統的訪問速度。

描述:為了應付複雜的網絡環境和不同地區用戶的訪問,通過CDN和反向代理加快用戶訪問的速度,同時減輕後端伺服器的負載壓力。CDN與反向代理的基本原理都是緩存。

(7)「分布式文件」系統 和 「分布式資料庫」


說明:隨著系統的不斷運行,數據量開始大幅度增長,這個時候發現分庫後查詢仍然會有些慢,於是按照分庫的思想開始做分表的工作

特徵:資料庫採用分布式資料庫,文件系統採用分布式文件系統。

描述:任何強大的單一伺服器都滿足不了大型系統持續增長的業務需求,資料庫讀寫分離隨著業務的發展最終也將無法滿足需求,需要使用分布式資料庫及分布式文件系統來支撐。

分布式資料庫是系統資料庫拆分的***方法,只有在單表數據規模非常龐大的時候才使用,更常用的資料庫拆分手段是業務分庫,將不同的業務資料庫部署在不同的物理伺服器上。

(8)使用NoSQL和搜尋引擎

特徵:系統引入NoSQL資料庫及搜尋引擎。

描述:隨著業務越來越複雜,對數據存儲和檢索的需求也越來越複雜,系統需要採用一些非關係型資料庫如NoSQL和分資料庫查詢技術如搜尋引擎。

應用伺服器通過統一數據訪問模塊訪問各種數據,減輕應用程式管理諸多數據源的麻煩。

(9)業務拆分


特徵:系統上按照業務進行拆分改造,應用伺服器按照業務區分進行分別部署。

描述:為了應對日益複雜的業務場景,通常使用分而治之的手段將整個系統業務分成不同的產品線,應用之間通過超連結建立關係,也可以通過消息隊列進行數據分發,

當然更多的還是通過訪問同一個數據存儲系統來構成一個關聯的完整系統。

縱向拆分:將一個大應用拆分為多個小應用,如果新業務較為獨立,那麼就直接將其設計部署為一個獨立的Web應用系統

縱向拆分相對較為簡單,通過梳理業務,將較少相關的業務剝離即可。

橫向拆分:將復用的業務拆分出來,獨立部署為分布式服務,新增業務只需要調用這些分布式服務

橫向拆分需要識別可復用的業務,設計服務接口,規範服務依賴關係。

(10)分布式服務

特徵:公共的應用模塊被提取出來,部署在分布式伺服器上供應用伺服器調用。

描述:隨著業務越拆越小,應用系統整體複雜程度呈指數級上升,由於所有應用要和所有資料庫系統連接,最終導致資料庫連接資源不足,拒絕服務。

分布式服務面臨哪些問題?

當服務越來越多時,服務URL配置管理變得非常困難,F5硬體負載均衡器的單點壓力也越來越大。 當進一步發展,服務間依賴關係變得錯蹤複雜,甚至分不清哪個應用要在哪個應用之前啟動,架構師都不能完整的描述應用的架構關係。 接著,服務的調用量越來越大,服務的容量問題就暴露出來,這個服務需要多少機器支撐?什麼時候該加機器? 服務多了,溝通成本也開始上升,調某個服務失敗該找誰?服務的參數都有什麼約定? 一個服務有多個業務消費者,如何確保服務質量? 隨著服務的不停升級,總有些意想不到的事發生,比如cache寫錯了導致內存溢出,故障不可避免,每次核心服務一掛,影響一大片,人心慌慌,如何控制故障的影響面?服務是否可以功能降級?或者資源劣化?

【編輯推薦】

【責任編輯:

武曉燕

TEL:(010)68476606】

點讚 0

相關焦點

  • 廖閱鵬:前世今生催眠曲,帶你夢回前世,總結今生!
    最近在最右上,看到了一則消息,許多人聽了廖閱鵬的前世今生催眠曲,都看到了自己的前世,我覺得很神奇,便趁著月黑風高之夜,孤身一人躲在被窩裡,悄悄的打開了喜馬拉雅收音機,點開了前世今生催眠曲,帶上耳機,準備一場穿越之旅。
  • 一分鐘帶你了解颱風山竹的前世今生
    一分鐘帶你了解颱風山竹的前世今生時間:2018-09-17 16:48   來源:今日頭條   責任編輯:沫朵 川北在線核心提示:原標題:颱風山竹是怎麼形成的?一分鐘帶你了解颱風山竹的前世今生 眾所周知,每年七八月份是颱風來襲最頻繁的時候,可是今年卻是在金秋九月迎來了今年颱風光顧,山竹颱風勢頭正猛,正侵擾各個地區,很多網友多好奇颱風是如何形成的,小編來給大家科普一下。 颱風山竹   原標題:颱風山竹是怎麼形成的?
  • 你相信前世今生嗎?
    你相信前世今生嗎?我不知道自己是不是真的相信,不過我想還是相信的成份多一些吧!那個網絡上流傳了很久的《前世今生催眠曲》我是最近才看到的,感覺很神奇,好多網友都說自己看到了前世!我也很想看一看自己的前世,記得在網易裡測過自己的前世,是一個嬪妃,也測過說是皇后,但我都當做是娛樂,只是這一次,我在心裡潛意識的希望我可以了解自己的前世。進行催眠最需要的是心靜,從昨天開始到今天,我試了很多次都沒能成功,因為我無法靜下心來。當聆聽著大師的指導和美妙的音樂時,我的頭腦中似乎有影像,但現實卻清晰地佔據著全部的心裡。漸漸地,模糊的影像也便消失了。
  • 土星宮位看出你的前世和今生
    人出生時土星在出生星座圖中所佔的位置,即代表這個人的命運,所謂的命運,也就是反映你前世的人生。所以,這就是為什麼使用土星來探索前世的種種秘密……方法:以自己太陽所在宮位為第一宮,土星相對在第幾宮位,就代表是第幾類型者。第一類型者,土星一宮你的前世人生充滿挫折,做事情經常半途而廢,虎頭蛇尾。向新的事物挑戰時,也都是無疾而終。
  • 今生功名利祿前世就註定?六道輪迴看你今生運勢
    那「三分」到底註定了你怎樣的命運?你能否年少有成?能否功成名就,富貴一生……今生的事業財富其實在前三世的輪迴中早已註定!紫微小仙這就用輪迴論命的佛教密典《達摩一掌經》來教大家如何運用自己的生辰,來推算出自己前三世的輪迴。
  • 一書在手,盡覽長江的前世今生
    一書在手,盡覽長江的前世今生 2020-11-24 16:28 來源:澎湃新聞·澎湃號·政務
  • 「催眠音樂」——能讓人「感觸」前世今生?
    專業人士稱,所謂看到前世的說法玄乎其玄,不足為信   想回到過去,看看你的前世嗎?這樣一個近乎荒唐的問題近來卻在網絡上「熱」起來——它與一段名為「前世今生」的音頻有關。  近日,記者在百度貼吧的「洛陽五中」貼吧中,看到這樣一個名為「來探索一下自己的前世今生」的帖子。
  • 婚姻真相:今生的愛人就是前世埋葬你的人
    今生的愛人就是前世埋葬你的人(資料圖) 前世,究竟是誰埋葬了你 欣賞他的人說,你瞧,他多用功,睡著了還拿著書。 不欣賞他的人說,你瞧,他多懶惰,一拿著書就睡著了。 看的人不同了,書生就不是那個書生了。 你愛他的時候,他的缺點都是優點,你不愛他了,他的優點也成了缺點。 看的眼光不同了,他就不是他了。 和一個人牽手的時候,就以為會是一生一世的相守。
  • 科技·創新·發展北方帶你探索特斯拉的「前世今生」
    想了解特斯拉為什麼跑得快嗎?想知道特斯拉為什麼貴嗎?想探索特斯拉的續航裡程嗎?北方汽修學校帶你探索特斯拉的「前世今生」。1991年,通用汽車製造了一款量產電動汽車投放市場,其貌不揚的電動車,續航裡程僅有140公裡,在生產了兩千多輛之後,通用便於2002年宣布放棄。2003年特斯拉成立後,開始尋找高效電動跑車所需投資和材料。當年,T-zero 換上鋰電池後行駛裡程就達到了480公裡。特斯拉用了約五年的時間進行研發,才成就如今的特斯拉引以為傲的續航能力。
  • 一文理解分布式架構
    本文轉載自【微信公眾號:手機電腦雙黑客,ID:heikestudio】經微信公眾號授權轉載,如需轉載與原文作者聯繫一、什麼是分布式架構分布式系統(distributed system) 是建立在網絡之上的軟體系統。內聚性:是指每一個資料庫分布節點高度自治,有本地的資料庫管理系統。
  • 催眠前世今生_啊漫老師:揭示你的夫妻關係
    前世今生,輪迴轉世,你是怎樣看呢?前世今生,有人信,有人不信。催眠中的前世今生,怎麼看?如果你相信前世輪迴之說,那這就是今生轉世之緣。如果你不是特別確定,催眠中的前世今生,實質上可以看成是發生在很久之前的事情(可能都忘記了),或者深埋潛意識的感受、記憶,以意象畫面的形式呈現出來。
  • 專訪魏斯博士——解讀《前世今生》
    和凱薩琳女士的因緣際會       在《前世今生》一書裡,和以前的受訪中,魏斯博士多次談到了他遇到凱薩琳後人生的轉變:「遇到凱薩琳之前       在《前世今生》一書中也提到,大師們通過凱薩琳共示現了10餘次,談話涉及到人類的不朽及生命的真正意義:「我們的任務是學習,豐富知識成為神那樣的生命。直到我們可以解脫了,然後我們會回來教誨和幫助其它人。」
  • 分布式架構概述
    簡介作為一名架構師,我們要專業,要能看懂代碼,及時光著臂膀去機房,也能獨擋一面!及時同事搞不定問題,或者撂挑子,你也能給老大一個堅定的眼神:不怕,有我在!還能在會議室上滔滔不絕,如若無人,讓不懂技術的妹子看你時眼神迷離,就好想落霞與孤鶩齊飛!
  • 催眠:貪得無厭的前世,苦苦掙扎的今生
    ~01~今生她是一個18歲的小女孩,正面臨高考,發現自己內心有很多的悲苦擾亂她的心神無法安心讀書。所以她就突發奇想,想去看看她自己的前世,她認為或許看過了自己的前世,可以對今生的很多事情釋懷。長大後,她一開始就嫁給了一位富商,但是結婚當天富商就死了。沒多久,她又跟媽媽一樣再嫁給一位軍官,是一位督軍,而她自己也是一位軍官。她跟督軍生了一個兒子,她對兒子婚姻的態度是,娶也要娶家庭條件至少跟自己家相對等的。可惜事與願違,兒子最後娶了一個沒落的貴族格格,並以格格已經懷孕來逼迫她同意他們結婚。
  • 催眠到底可不可以看到你的前世今生呢
    催眠到底可不可以看到你的前世今生呢,每天有很多粉絲,朋友很好奇地問我可不可以通過催眠來看到我的前世,那今天不但告訴你催眠能不能看到前世今生同時告訴你催眠,首先我們要知道催眠到底是什麼和影視作品以及表演當中催眠是不是一樣的,答案是有很大的區別
  • 催眠:前世今生—我與女兒的約定
    你相信——「前世今生」嗎?一個聽上去無比玄妙而又浪漫的詞,它究竟是不是真的存在?致力於此的人至今仍在不斷探究。但是在心理諮詢界,利用前世回溯治療有效的案例數不勝數,所以不論真實與否,單從療愈效果上來說,前世回溯治療被證實從根源上是有效的。
  • 催眠治療與前世今生
    那麼,說回到我現在的工作上,我是一個催眠治療師,也是一個系統整合療愈師,自然我是相信輪迴的,所以從世間的層面來說,前世今生,在我看來無疑是存在且真實不虛的。同時,我更相信的是「空性」,也就是出世間的角度來說,一切有為法,如夢幻泡影,如露亦如電,應作如是觀。 為什麼這樣說呢?
  • 西藏一神秘湖—拉姆拉措,最神秘、最靈敏的湖水,能看到前世今生
    在這裡可以看到自己前世今生的「神湖」,你說神奇不神奇。拉姆拉措位於西藏加查縣的曲科傑叢山中,是一座規模很小的湖泊,是西藏最富傳奇色彩的湖泊。" Ram"意為仙女、女神," Ram"意為湖泊," Ram"意為"吉祥天姆湖"、" Sam"。
  • 心理學:憑直覺選一串琥珀蜜蠟,測你前世的愛人和你今生什麼關係
    >A、你的前世愛人在你的今生,只是一個陌生的路人。你的前世是一個古代的名門望族,因為家風嚴格,雖然你從小養尊處優但是也幾乎沒什麼自由。包括你的婚姻,完全是你的父母做主,說白了就是一場政治婚姻,雙發的家庭忽有所求而已。你和你的另一半,沒有任何感情的基礎就同了房。你們彼此沒有感覺,都認為不是自己心裡喜歡的那一個。除了生理上的交流之外,你們的感情世界裡沒有交融。今生的你們會再次相遇,但只是擦肩而過罷了。
  • 《紅色星球》帶你走進火星的前世今生
    《紅色星球》用五章高清圖文為我們展現出一個被西方稱之為「戰神」的紅色行星它的前世、今生以及未來,讓我們看到獨特而壯觀的火星地形圖;火星漫遊車們的奇幻之旅;火星上存在微生物生命的新證據;未來可能的火星地形改造和移民計劃。可以說這一本《紅色星球》是火星探索的歷史,是人類對火星探測挑戰的一個全面的總結。