您好,登錄后才能下訂單哦!
分布式系統是什么意思,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
分布式系統背景
說分布式系統必須要說集中式系統,集中式系統中整個項目就是一個獨立的應用,整個應用也就是整個項目,所有的東西都在一個應用里面。
如下圖所示
如一個網站就是一個應用,最后是多個增加多臺服務器或者多個容器來達到負載均衡的避免單點故障的目的,當然,數據庫是可以分開部署的。
集中式很明顯的優點就是開發測試運維會比較方便,不用為考慮復雜的分布式環境。
集中式很明顯的弊端就是不易擴展,每次更新都必須更新所有的應用。而且,一個有問題意味著所有的應用都有問題。當系統越來越大,集中式將是系統最大的瓶頸。
分布式系統是若干獨立計算機的集合,這計算機對用戶來說就像單個相關系統。
以上定義摘自<<分布式系統原理與范型>>一書。
也就是說分布式系統背后是由一系列的計算機組成的,但用戶感知不到背后的邏輯,就像訪問單個計算機一樣。
說的有點繞,我們可以來簡單看下分布式系統圖。
在分布式系統中:
1、應用可以按業務類型拆分成多個應用,再按結構分成接口層、服務層;我們也可以按訪問入口分,如移動端、PC端等定義不同的接口應用;
2、數據庫可以按業務類型拆分成多個實例,還可以對單表進行分庫分表;
3、增加分布式緩存、搜索、文件、消息隊列、非關系型數據庫等中間件;
很明顯,分布式系統可以解決集中式不便擴展的弊端,我們可以很方便的在任何一個環節擴展應用,就算一個應用出現問題也不會影響到別的應用。
隨著微服務Spring Cloud & Docker的大熱,及國內開源分布式Dubbo框架的重生,分布式技術發展非常迅速。
分布式系統雖好,也帶來了系統的復雜性,如分布式事務、分布式鎖、分布式session、數據一致性等都是現在分布式系統中需要解決的難題,雖然已經有很多成熟的方案,但都不完美。分布式系統也增加了開發測試運維成本,工作量增加,分布式系統管理不好反而會變成一種負擔。
看完上述內容,你們掌握分布式系統是什么意思的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。