前言
現在的架構很多,各種各樣的,如高併發架構、異地多活架構、容器化架構、微服務架構、高可用架構、彈性化架構等,還有和這些架構相關的管理型的技術方法,如 DevOps、應用監控、自動化運維、SOA 服務治理、去 IOE 等等,還有很多。
那什麼是分佈式系統?分佈式系統是支持分佈式處理的軟件系統,是由通信網絡互聯的多處理機體系結構上執行任務的系統。包括分佈式操作系統、分佈式程序設計語言及其編譯系統、分佈式文件系統分佈式數據庫系統等,當然這些也是分佈式的關鍵技術。
分佈式需要了解的重點
1、ActivMQ 分佈式消息總線
在大型分佈式系統中,在遵循JMS規範的前提下 ,進行系統之間的大規模異步消息通信和集中常用的通信機制。
能對JMS規範有深入的瞭解,以及分佈式系統架構中的異步通信機制。
2、高併發編程必備之NIO基礎
NIO的基本原理以及實現過程
能對傳統IO和NIO的區別進行系統的瞭解並能學會NIO的實現原理
3、Redis內存數據庫
在大型分佈式系統中,怎樣在高併發的情況下解決某些非結構化數據快速存取的解決方案。
能對非關係數據庫和非關係數據庫有個系統的瞭解 以及Redis內存數據庫的基本數據類型和各自的應用場景。
4、高併發編程之NIO流行框架之Netty
NIO框架Netty的簡介以及netty的應用場景。
能運用netty實現客戶端和服務器端的基本通信。
5、Lucene 全文檢索技術
在大型電商網站中,站內超過百萬計商品目錄的搜索解決方案。
能對全文檢索技術有個初步的瞭解,以及Lucene在站內搜索應用中的底層操作原理。
6、Duboo分佈式服務框架
在分佈式系統中,Duboo框架的應用場景和應用方式。
看到這些技術,是不是感覺自己的知識內存該更新了呢?
不用擔心,小編從不是自己一個人來,今天,就爲大家帶來了這篇學習分佈式系統的常用方法和案例分析,幫助大家實戰中思考,思考中進步~~~
內容簡介
本篇全面介紹在設計分佈式系統時所要考慮的技術方案,內容豐富、案例新穎,相關理論與技術實踐較爲前瞻。不僅僅介紹了分佈式系統的原理、基礎理論,同時還引入了大量市面上常用的最新分佈式系統技術,不僅告訴我們怎麼用,同時也分析了爲什麼這麼用,並闡述了這些技術的優缺點。希望本篇可以成爲大家案頭的工具書,供我們隨手翻閱。
本書分爲三大部分,即分佈式系統基礎理論、分佈式系統常用技術以及經典的分佈式系統案例分析。
第一部分主要介紹分佈式系統基礎理論知識,總結一些在設計分佈式系統時需要考慮的範式、知識點以及可能會面臨的問題,其中包括線程、通信、一致性、容錯性、CAP理論、安全性和併發等相關內容;同時講述分佈式系統的常見架構體系,其中也包括最近比較火的RESTfu風格架構、微服務、容器技術等。
第二部分主要列舉了在分佈式系統應用中經常用到的一些主流技術,並介紹這些技術的作用和用法;這些技術涵蓋了分佈式消息服務、分佈式計算、分佈式存儲、分佈式監控系統、分佈式版本控制、RESTful、 微服務、容器等領域的內容。
第三部分選取了以淘寶網和Twitter爲代表的國內外知名互聯網企業的大型分佈式系統案例,分析其架構設計以及演變過程;這部分相當於是對第二部分零散的技術點做一個“串燒”,讓大家可以結合技術的理論,看到實戰的效果。
第1章:分佈式系統基礎知識
- 1.1 概述
- 1.2 線程
- 1.3 通信
- 1.4 一致性
- 1.5 容錯性
- 1.6 CAP理論
- 1.7 安全性
- 1.8 併發
第1章介紹分佈式系統基礎理論知識,總結一些在設計分佈式系統時需要考慮的範式、知識點以及可能會面臨的問題,其中包括線程、通信、一致性、容錯性、CAP理論、安全性和併發等相關內容。
第2章:分佈式系統架構體系
- 2.1 基於對象的體系結構
- 2.2 面向服務的架構 (SOA)
- 2.3 REST風格的架構
- 2.4 微服務架構(MSA)
- 2.5 容器技術
- 2.6 Serverless架構
第2章詳細介紹分佈式系統的架構體系,包括傳統的基於對象的體系結構、SOA,也包括最近比較火的RESTful風格架構、微服務、容器技術、Serverless 架構等。
第3章:分佈式消息服務
- 3.1 Apache ActiveMQ
- 3.2 RabbitMQ
- 3.3 RocketMQ
- 3.4 Apache Kafka
第3章介紹常用的分佈式消息服務框架,包括Apache ActiveMQ、RabbitMQ、 RocketMQApache Kafka等。
第4章:分佈式計算
- 4.1 MapReduce
- 4.2 Apache Hadoop
- 4.3 Apache Spark
- 4.4 Apache Mesos
第4章介紹分佈式計算理論和應用框架方面的內容,包括MapReduce、Apache Hadoop、Apache Spark、Apache Mesos等。
第5章:分佈式存儲
- 5.1 Bigtable
- 5.2 Apache HBase
- 5.3 Apache Cassandra
- 5.4 Memcached
- 5.5 Redis
- 5.6 MongoDB
第5章介紹分佈式存儲理論和應用框架方面的內容,包括Bigtable、Apache HBase. Apache Cassandra、Memcached、 Redis、 MongoDB等。
第6章:分佈式監控
- 6.1 Nagios
- 6.2 Zabbix
- 6.3 Consul
- 6.4 ZooKeeper
第6章介紹分佈式監控方面常用的技術,包括Nagios、Zabbix、 Consul、ZooKeeper 等。
第7章:分佈式版本控制系統
- 7.1 Bazaar
- 7.2 Mercurial
- 7.3 Git
第7章介紹常用的分佈式版本控制工具,包括Bazaar、Mercurial、 Git 等。
第8章:RESTful API、微服務及容器技術
- 8.1 Jersey
- 8.2 Spring Boot
- 8.3 Docker
第8章介紹RESTful API、微服務及容器相關的技術,着重介紹Jersey、Spring Boot, Docker等技術的應用。
第9章:淘寶網: “雙11"神話的締造者
- 9.1 從L AMP到Java平臺的轉變
- 9.2 堅定不移地走 “去IOE”的道路
- 9.3 打造雲計算,決戰“雙11”
第9章和第10章分別介紹以淘寶網和Twitter爲代表的國內外知名互聯網企業的大型分佈式系統案例,分析其架構設計以及演變過程。
第10章:Twitter:實時信息傳遞的者
- 10.1 緩存,讓響應更快
- 10.2 服務拆分與治理
- 10.3 抗擊流量的洪流
看到這裏,是不是對分佈式系統有了更新更全的認識呢?
後記
隨着互聯網的快速發展,和雲服務概念的普及,使得我們在搭建系統的時候越來越傾向於分佈式系統架構,也成了現在企業升職加薪的重要考覈技術。
喜歡小編請多多點贊評論轉發,關注小編,後續小編會再帶來更豐富的學習內容,希望能夠幫到大家。另外,如需獲取文中提到的分佈式架構技術和實戰筆記,請私信聯繫哦~~~