程超 梁桂釗 秦金衛 方誌斌 張逸 杜琪 殷琦 肖冠宇 著 java
今天,我告訴你們一個好消息,我和幾個好朋友的新書《高可用可伸縮微服務架構:基於 Dubbo、 Spring Cloud 和 Service Mesh》正式預售啦。全書分 14 章,共 528 頁。
歷時近一年半的書即將出版了,我心裏的激動難以言表。除了感謝寫做團隊,還要感謝編輯陳曉猛對咱們的不斷鼓勵和大力支持。最後,你們基於共同的對微服務架構技術的熱愛和樂於分享知識經驗的精神,咱們把微服務架構領域的各種知識,以及本身日常的經驗和積累作了完整的梳理和總結,凝結爲這樣一本技術書,做爲 2019 年的一份禮物呈現給你們,歡迎你們共同探討和交流。
git
近年來微服務架構已經成爲大規模分佈式架構的主流技術,愈來愈多的公司已經或開始轉型爲微服務架構。本書不以某一種微服務框架的使用爲主題,而是對整個微服務生態進行系統性的講解,並結合工做中的大量實戰案例爲讀者呈現一本讀完便可實際上手應用的工具書。 書中的理論部分介紹了微服務架構的發展歷程,通俗地講解了領域驅動設計,幫助讀者更好地利用DDD 來建模和劃分服務;微服務穩定性保證的經常使用手段和微服務下如何保證事務的一致性這兩章凝聚了做者多年的積累和思考,相信讀者看完後會有不同的感觸和收穫;書中實戰部分的內容很是豐富,以項目爲基礎,逐層介紹常見的 Dubbo、Spring Cloud 和 Service Mesh 框架的具體使用方法,並對實現原理進行剖析;書中還以具體案例全面介紹了微服務雙活體系建設、微服務監控與告警、微服務編排、百億流量微服務網關的設計與實現,以及基於支付場景下的微服務改造等,並讓讀者瞭解如何藉助微服務來加強和重構現有的遺留系統。 無論是剛接觸微服務的新手,仍是正在嘗試藉助微服務解放生產力的開發人員或運維人員,甚至是立志於構建高可用可伸縮的微服務體系的技術 Leader 和架構師,閱讀本書,對讀者必有裨益。
經歷了系統從單體架構到 ESB 企業總線架構,再到全面的微服務化架構的整個改造過程,深知微服務看似美好,但在企業中落地實施實際上是一件很困難的事情,本書不只從理論高度上闡述了微服務架構,也有豐富的可操做的實踐案例,涉及服務劃分、框架選型、服務治理,尤爲是當前流行的服務網格,恰如咱們在微服務架構改造過程的真實寫照,相信你們也會從本書中得到微服務最佳實踐的靈感和方向。程序員
王明華(北京多來點信息技術有限公司 CTO)github
分而治之、高內聚、鬆耦合等是軟件開發領域的高頻詞彙,現階段,表明這類思路的熱門架構方法非微服務莫屬。恰如武術中的「見招拆招」,把各類變招加以拆解和演練,才能理解招式,若干招式組成套路,再結合時間、空間、身體結構,靈活運用,最終作到「拳無定勢」。本書幫你拆解微服務奧祕,從實戰角度帶你領略目前構建微服務的幾種主要工具,結合案例,細細道來,值得開發人員學習。算法
曹中勝(海康威視開發總監)數據庫
本書圍繞微服務架構高可用方面進行深度剖析,從實戰角度對微服務相關技術進行講解,教會咱們如何輕鬆搭建可伸縮的微服務架構,以及所須要的基礎知識和技能,對一線架構師的工做有着很是大的指導意義。做者程超對微服務架構理解透徹,功力深厚,強烈向各位技術同行們推薦這本書!編程
黃勇(《架構探險》做者)json
本書從微服務和領域驅動開發的角度闡述高可用和可伸縮架構,知識點覆蓋全面。書籍由多名一線互聯網資深人員聯合出品,體現了現代技術書籍的合做雙贏的模式。各位做者取長補短,將最好的內容呈現至讀者面前。在架構類的書層出不窮的當今,本書特色鮮明,是我眼中的優秀書籍,推薦讀者品讀。後端
張亮(京東數科數據研發負責人,緩存
Apache ShardingSphere 發起人& PPMC,
《將來架構——從服務化到雲原生》做者 )
「微服務」早已成爲廣大「碼農」們的聊天必備佳品,可往往深刻「微服務架構在具體實踐中是怎樣實施的?微服務架構在實施過程當中存在怎樣的困難和挑戰?服務以什麼原則拆分?拆分紅什麼樣的顆粒度纔算微?如何選型?」等一類的話題時,你們每每會三緘其口或乏善可陳。做者將自身多年的一線項目實踐經驗以文字形式將微服務的原理到項目實踐應用深刻淺出地完整呈現出來,同時經過案例對微服務架構實施過程當中存在問題及解決方法進行了總結,對於想快速學習、應用微服務架構的讀者來講是不可多得之做。
曾波(波姐,鵬博士電信傳媒集團 OTT 業務技術負責人)
微服務(MicroServices)定義較早見於 Martin Fowler 的著做和博客中,但在此以前,有幾家公司早已開始了微服務的實踐探索,並創建了具有至關規模和影響力的產品,例如,阿里巴巴開源的 Dubbo。而秦金衛正是在這一階段任職於阿里巴巴,從事微服務相關的研發工做。最近幾年,微服務領域的基礎軟件層出不窮,由開源社區或一些大公司主導的方案都逐漸成熟,然而,卻也給微服務方案的選型帶來一些不便。本書結合常見的微服務產品,在服務研發、性能優化、監控、管理甚至遺留系統改造方面都作了全面的介紹,很是值得一讀。
宓學強(陌陌前技術主管,淘寶微服務框架負責人)
微服務架構對大型分佈式後端的改造和優化很是有幫助,可是它並不容易實現,搞很差就會事倍功半。本書理論與實踐相結合,介紹了時下流行的 Dubbo、Spring Cloud、容器化等技術,以及實踐經驗,對於想了解微服務技術的你是一個不錯的選擇。
付磊(《Redis 開發與運維》做者)
微服務這兩年的熱度持續不減,支持這種理念的中間件、開發框架等產品也不斷迭代演進,咱們能夠運用的武器愈來愈多,可是這也使得技術人員在學習與選擇上增長了很多的難度。本書基於實戰,從架構的本質,微服務設計的原則到各環節重要技術點的分析等環節作了詳細的思路講解。其中也涵蓋了目前最流行的一些框架與產品,緊跟時代的步伐,因此我推薦想要深刻了解微服務架構全貌的讀者閱讀此書。
翟永超(公衆號「程序猿 DD」、
《Spring Cloud 微服務實戰》做者)
很高興看到《高可用可伸縮微服務架構》一書問世,做者老師們是社區摯友,多年以來致力於技術架構研究與落地,本書集合了技術大咖精華,結合業界最佳實踐,展現微服務架構精華,是技術架構師們不可或缺的工具書。
王友強(中生代技術社區發起人)
微服務架構時下不斷升溫,如何針對本身當前業務場景進行微服務架構改造變得迫在眉睫,若同時還要兼顧高可用性、可伸縮性,這就要求架構師們具有龐大的技術體系,且不說容器化、DevOps、微服務監控和網關,光是核心的服務治理學習曲線就異常陡峭,這本書無疑如久旱甘霖,值得你們細細品讀。
蘭小偉(《Solr 權威指南》做者)
本書深刻淺出地講解了微服務架構的理論與設計方法,並聚焦高可用和可伸縮這兩大特性,詳細分析了實現這兩大特性須要關注的方向,包括高可用、高併發、分佈式事務等。並且介紹和分析了微服務實踐中使用的一系列基礎組件,包括遠程過程調用、網關、服務編排等。本書還經過具體的業務場景——支付場景來介紹如何在具體業務中實踐高可用、可伸縮的微服務架構。很是值得閱讀。
韋韜晟(Apache Dubbo Committer,
某互聯網金融公司架構師)
本書系統解答了 IT 企業在服務演進主線過程當中,在微服務化技術升級和服務遷移過程當中的一些核心節點的關鍵痛點問題。最終讓服務演進成基於領域建模,高可用、可伸縮的微服務架構,從而在技術層面解決當前一些大型企業和一些獨角獸企業遇到的服務化進程推動之痛,強烈建議你們閱讀學習。
徐凌雲(新華網在線教育平臺技術負責人,
京東雲網關研發負責人)
微服務架構對於金融行業從「穩態」到「敏態」的數字化轉型意義非凡,極大提高業務系統的可用性、擴展性和應變能力。做者基於一線實戰項目,深刻淺出介紹微服務架構的各類技術細節。此刻此書,恰逢甘霖,給你們提供了一個學習微服務的捷徑。
胡曉磊(華爲金融行業解決方案專家)
想知道怎樣創建起微服務架構的完整思惟嗎?我以爲你應該看看這本書。它勾勒出微服務架構的編程思想和原理,介紹了微服務架構實例,讓咱們對微服務架構的認識變得立體、系統起來。而且深刻淺出、通俗易懂,既具備精煉的微服務架構之道,又包含精彩具象的實踐代碼。不論初學編程的菜鳥,仍是經驗豐富的大牛,都值得一讀。
周智勇(融貫電商高級研發總監)
本書階梯指引讀者深刻微服務框架,滿滿的都是乾貨,從架構發展歷程引入微服務架構,經過與最近炙熱的領域驅動設計(DDD)結合碰撞出「感情火花」把架構設計講得通俗易懂,加上各個框架實現原理的深刻解讀,讓讀者不管對框架仍是微服務架構都有了更深入的理解,再結合實際項目的實戰部分,讓微服務架構更加清晰地呈如今腦海裏。是一本通俗易懂的微服務架構工具書,很是值得擁有。
楊進京(美團金融技術專家)
本書覆蓋了微服務的方方面面——微服務理論、拆分依據、開發框架、穩定性保障、分佈式事務、監控、微服務編排、重構乃至性能優化,甚至目前火熱的「Service Mesh」均有覆蓋。很難想象一本書居然能介紹這麼龐大的技術體系,並且還能無縫地承接。閱讀本書,能讓您對微服務的完整生態有一個相對完整的認識,對於想快速瞭解並應用微服務構建系統的讀者來講是一部不可多得之做。
周立(《Spring Cloud 與 Docker 微服務架構實戰》做者)
本書從微服務架構概念開始,指出微服務的業務領域模型設計。重點講了微服務設計的重點和痛點:性能優化、監控、一致性、可用性等。既有理論依據、設計心得,又有工程實施方案;既有應用框架源碼分析,又有自動化運維工具介紹。各位做者都是在金融和電商等行業一線出來的資深人員,內容深刻淺出,是講述微服務的一本不可多得的好書。
王欣(Apache Dubbo PPMC)
時至今日,不管大型互聯網公司仍是創業型公司,你們愈來愈多地選擇微服務架構。衆所周知,實現微服務架構是很是困難的,本書從理論到實踐闡述瞭如何搭建高可用可伸縮的微服務系統。這本書不僅僅介紹經常使用的 Apache Dubbo、Spring Cloud 等框架的使用,更重要的是告訴讀者使用微服務架構所遇到的常見問題及解決方案,是一本誠意十足和乾貨滿滿的書。
沈哲(《RxJava 2.x 實戰》做者,
愛回收創新業務部技術專家)
幾位熟悉的朋友合著的這本書我以爲擔得起兩個字「乾貨」,既有 Dubbo、Spring Cloud,還有最近討論比較多的 Service Mesh,關注案例的朋友重點看一下支付平臺、遺留系統改造等章節。贈人玫瑰、手有餘香,感謝諸位爲微服務原創圖書再添佳做。若是說遺憾的話,就是讀完意猶未盡,期待續篇。
於君澤(《深刻分佈式緩存》聯合做者)
我和本書做者程超在多年前相識於技術中,他的踏實、認真、對技術的孜孜不倦的精神給我留下了深入的印象,咱們惺惺相惜、相見恨晚。微服務架構是這些年很是火的名詞,不管是阿里等巨型互聯網公司仍是中小型企業,微服務均承載了大量的商業系統。本書緊密圍繞微服務架構,經過 DDD、Dubbo、Spring Cloud、網關、監控、穩定性等維度全方位地展現瞭如何將微服務架構作到高可用、可伸縮。本書內容豐富,對於體系化的思考和認知微服務系統的架構,有着很是重要的參考價值。
朱政科(《HikariCP 實戰》做者)
本書涉及微服務架構的衆多方面,且每一個章節都很『幹』。雖然說是關於微服務,但書中所講的概念和模式,毫不僅僅是針對微服務,無論是經驗豐富的程序員,仍是初出茅廬的新手,都能在本書中得到所需的知識。
澤彬(阿里巴巴技術專家)
史海峯
微信公衆號「IT 民工閒話」做者,
貝殼金服小微企業生態 CTO
四季有輪轉,行業有冷暖,人生有起落,智慧可傳承。本書的做者所有來自行業一線,具備至關豐富的微服務實戰經驗,更可貴的是傾囊相授,總結最新案例結集成冊,分享給業界同仁。互聯網行業競爭激烈,技術突飛猛進,惟有持續學習成長,方能保持核心競爭力,在職業道路上站得穩走得遠。傳道授業解惑皆爲我師,此行當以同懷報之。 天行健,君子以自強不息;地勢坤,君子以厚德載物。贊幾位做者老師,並與諸君共勉!
羅毅(北緯)
阿里巴巴高級技術專家
Apache Dubbo 負責人
很榮幸在 Apache Dubbo 準備從阿帕奇軟件基金會畢業併成爲頂級項目之際,應本書做者之一,也是 Apache Dubbo PPMC 之一的秦金衛先生的邀請來爲本書做序。在今年 Apache Dubbo 的規劃中,雲原生微服務是路線圖中的重點。也以此序與諸位讀者共勉,指望 Apache Dubbo 可以成爲各位在架構選型中重點考慮的一環。
程超
網名小程故事多,現任某公司高級架構師,超過 12 年的 Java 研發經驗,8 年技術管理和架構經驗,熟悉支付和電商領域,擅長微服務生態建設和運維監控,對 Dubbo、Spring Cloud 和 gRPC 等微服務框架有深刻研究,幫助多家公司進行過微服務建設和改造。合著做品《深刻分佈式緩存》,阿里雲 MVP、雲棲社區外部專家、Codingfly 社區特聘技術專家、CSDN 博主專家。
梁桂釗
現任某互聯網公司高級開發工程師,參與過內容分發、K12 教育、淘系電商等項目。目前,專一於新零售電商服務的業務摸索和電商服務創新實踐。具備 Java 核心技術、微服務、分佈式、高併發等領域一線實戰經驗,並對新興技術方向和各類開源框架有濃厚興趣。公衆號「服務端思惟」的做者。
秦金衛(KimmKing)
現任某公司高級技術總監/Apache Dubbo PPMC,阿里前架構師/某商業銀行北京研發中心負責人。關注互聯網、電商、金融、支付、區塊鏈等領域,10 多年研發管理和架構經驗,對於中間件、SOA、微服務,以及各類開源技術很是熱衷,活躍於 Dubbo、Fastjson、Mule、ActiveMQ 等多個開源社區。我的博客 http://kimmking.github.io。
方誌斌
現任某物聯網公司高級研發工程師。目前專一於大型物聯網平臺架構的設計與開發工做。對於微服務、分佈式、集羣有必定的研究和實戰經驗。對 Java 領域的開源框架有濃厚的興趣,喜歡深刻分析、總結框架源碼。SpringForAll 社區核心成員,組織屢次社區技術專題、問答等活動。
張逸
架構編碼實踐者,微服務架構設計者,領域驅動設計佈道師,大數據平臺架構師。著譯做包括《軟件設計精要與模式》《恰如其分的軟件架構》《人件》等。我的微信公衆號爲「逸言」,我的博客:http://zhangyi.xyz。
杜琪
網名阿杜,現任螞蟻金服高級研發工程師,2015 年 6 月畢業於南開大學,計算機系統結構碩士。畢業後開始接觸分佈式業務系統開發,曾在有贊負責用戶中心基礎服務,對分佈式業務系統的穩定性、可靠性有豐富的經驗。喜歡研究底層技術,喜歡研究疑難技術問題,例如 JVM 內存問題排查、GC 調優,等等。有對外輸出分享的習慣,是公衆號 javaadu 的維護者。
殷琦
網名滌生,現任「美團點評」技術專家,2015 年 3 月畢業於東華大學,軟件工程碩士。2015 年 3 月加入「美團點評」基礎架構部,開始接觸微服務架構,以後一直從事服務框架的研發工做,對微服務架構發展與演進有很是深入的認識。我的比較喜歡研究並分享新技術,時刻關注並實踐微服務架構最前沿的技術,如 Service Mesh、Serverless 等。
肖冠宇
曾就任於小米、人民網等互聯網公司,具備豐富的大數據一線實戰經驗,專一大數據處理技術及機器學習算法研究。著有《企業大數據處理:Spark、Druid、Flume 與 Kafka 應用實踐》《Python3 快速入門與實戰》等書籍。
第 1 章:微服務架構概述(做者秦金衛)。
本章從軟件架構的發展歷程講起,分別對單體架構、SOA 架構和微服務架構的演進過程作了深刻淺出的講解,同時深刻介紹了微服務架構的特色,但願以宏觀的視角爲讀者打開微服務的大門。
第 2 章:微服務領域驅動設計(做者張逸)。
本章介紹了領域驅動設計是什麼,常見的領域架構有哪些,如何將領域驅動應用到微服務中,以及如何使用領域驅動進行合理的服務劃分等,幫助讀者在正式學習微服務前修煉「內功」。
第 3 章:Apache Dubbo 框架的原理與實現(做者程超)。
目前 Dubbo 已經被阿里巴巴技術團隊從新維護而且獲得了大力的發展和推廣,使用 Dubbo 能夠很好地進行微服務建設,本章較爲深刻地講解了 Dubbo 的使用和技巧,以及經過時源碼的深刻分析可以讓讀者對 Dubbo 的原理實現有一個全面的認識。
**第 4 章:Spring Boot/Spring Cloud 實踐(做者方誌斌)。
Spring Boot/Cloud 是目前較爲流行的微服務框架,本章以大量的實戰案例爲線索,爲讀者講解如何才能使用好 Spring Cloud 框架,講解如何避免在使用過程當中「踩坑」。
第 5 章:微服務穩定性保證的經常使用手段(做者杜琪)。
在業務發展愈來愈快,規模也愈來愈大的狀況下,咱們所面臨的就是如何在服務愈來愈多的狀況下保證微服務架構的穩定性,本章講解保障穩定性的經常使用技巧和手段。
第 6 章:微服務下如何保證事務的一致性(做者梁桂釗)。
本章介紹了從本地事務到分佈式事務的演變,深刻分析了微服務在強一致性場景和最終一致性場景下的解決方案,探討了二階段提交協議、三階段提交協議、TCC 模式、補償模式、可 靠事件模式等。同時,對開源項目的分佈式事務進行解讀,包括 RocketMQ 和ServiceComb。
第 7 章:百億流量微服務億級網關的設計與實現(做者秦金衛)。
本章從百億流量交易系統微服務網關(API Gateway)的現狀和麪臨問題出發,闡述微服務 架構與 API 網關的關係,理順流量網關與業務網關的脈絡,分享全面的 API 網關知識與經驗。
第 8 章:微服務編排(做者程超)。
本章以 Netflix Conductor 框架爲核心,從框架的使用和原理的角度深刻介紹了什麼是微服務編排,爲微服務執行復雜的業務邏輯提供了一種新的思路。
第 9 章:微服務數據抽取與統計(做者肖冠宇)。
在微服務架構下,服務必將愈來愈多,在這種狀況下進行數據統計和分析將變得很是困難,本章將深刻講解如何從不一樣服務的數據庫中抽取數據到統一的大數據平臺中,幫忙使用者更方便地進行數據的統計。
第 10 章:微服務雙活體系建設(做者程超)。
在企業發展規模愈來愈大的狀況下,用戶對系統的穩定性要求也愈來愈高,那麼單機房部署勢必成爲發展的瓶頸,本章將以實際案例出發講解同城雙活的建設。
第 11 章:基於支付場景下的微服務改造與性能優化(做者程超)。
本章從實際的案例出發,在具體的支付業務場景下,從一個新項目開始逐步講解如何利用領域驅動劃分服務,如何利用微服務框架進行服務治理,以及項目完成後怎樣提高微服務架構的性能。
第 12 章:遺留系統的微服務架構改造(做者梁桂釗)。
本章介紹了遺留系統的微服務架構改造,梳理了代碼分層結構的轉變,提出一個新的代碼分層思路來應對微服務的流行與普及,並深刻思考了遺留系統的債券,深刻探討單體系統拆分服務的方法論。同時,對遺留系統的微服務架構改造的解決方案給出 9 個切實可行的核心實踐思路。
第 13 章:Service Mesh 詳解(做者殷琦)。
隨着微服務的持續發展,下一代微服務架構已然出現,本章將深刻介紹 Service Mesh 的發展歷程,以及結合具體案例帶領讀者使用 Istio 進行具體實踐。
第 14 章:微服務監控實戰(做者程超)。
本章重點介紹 APM 的原理,從零開始開發 APM 監控系統,還深刻介紹 Prometheus 的安裝和原理,以及如何使用 Prometheus 進行監控和預警。