多位大厂专家鼎力推荐,44个微服务架构设计模式pdf,程序员福利
前言
本文的目標(biāo)是讓架構(gòu)師和程序員學(xué)會(huì)使用微服務(wù)架構(gòu)成功開發(fā)應(yīng)用程序。
本文不僅討論了微服務(wù)架構(gòu)的好處,還描述了它們的弊端。讀者將掌握如何在使用單體架構(gòu)和使用微服務(wù)架構(gòu)之間做出正確的權(quán)衡。
誰應(yīng)該閱讀本文?
本文的重點(diǎn)是架構(gòu)和開發(fā),適合負(fù)責(zé)開發(fā)和交付軟件的任何人(例如開發(fā)人員、架構(gòu)師、CTO或工程副總裁)閱讀。
本文側(cè)重于解釋微服務(wù)架構(gòu)的設(shè)計(jì)模式和其他概念。無論讀者使用何種技術(shù)棧,我的目標(biāo)都是讓你們可以輕松讀懂這本文。
你只需要熟悉企業(yè)應(yīng)用程序架構(gòu)和設(shè)計(jì)的基礎(chǔ)知識即可。特別是,需要了解三層架構(gòu)、Web應(yīng)用程序設(shè)計(jì)、關(guān)系型數(shù)據(jù)庫、使用消息和基于REST的進(jìn)程間通信,以及應(yīng)用程序安全性的基礎(chǔ)知識等概念。本文的代碼示例使用Java和Spring框架。為了充分利用它們,讀者應(yīng)該對Spring框架有所了解。
因?yàn)楸疚牡膬?nèi)容實(shí)在是太多了,所以小編只把部分知識點(diǎn)粗略的介紹一下子,更加詳細(xì)的內(nèi)容還需要大家來學(xué)習(xí)和探索,希望本文能夠幫助到大家的學(xué)習(xí)!!!
主要內(nèi)容安排
本文主要由13章組成。
■第1章描述了所謂“單體地獄”的癥狀,當(dāng)單體應(yīng)用程序超出其架構(gòu)時(shí)會(huì)出現(xiàn)這種問題,這可以通過采用微服務(wù)架構(gòu)來規(guī)避。這一-章還概述了微服務(wù)架構(gòu)模式語言,這也是本文大部分內(nèi)容的主題。
第2章解釋了為什么軟件架構(gòu)很重要,描述了可用于將應(yīng)用程序分解為服務(wù)集合的模式,并解釋了如何克服在此過程中遇到的各種障礙。
第3章介紹了微服務(wù)架構(gòu)中強(qiáng)大的進(jìn)程間通信的幾種模式,解釋了為什么異步和基于消息的通信通常是最佳選擇。
第4章介紹如何使用Saga模式維護(hù)服務(wù)間的數(shù)據(jù)一致性。 Saga 是通過傳遞異步消息的方式進(jìn)行協(xié)調(diào)的一系列本地事務(wù)。
第5章介紹如何使用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)的聚合和領(lǐng)域事件等模式為服務(wù)設(shè)計(jì)業(yè)務(wù)邏輯。
第6章以第5章為基礎(chǔ),解釋了如何使用事件溯源模式開發(fā)業(yè)務(wù)邏輯,事件溯源模式是一種以事件為中心的設(shè)計(jì)思路,用來構(gòu)建業(yè)務(wù)邏輯和持久化領(lǐng)域?qū)ο蟆?/p>
第7章介紹如何使用API組合模式或命令查詢職責(zé)隔離(CQRS)模式,這兩個(gè)模式用來實(shí)現(xiàn)查詢分散在多個(gè)服務(wù)中的數(shù)據(jù)。
第8章介紹了處理來自各種外部客戶端請求的外部API模式,例如移動(dòng)應(yīng)用程序、基于瀏覽器的JavaScript應(yīng)用程序和第三方應(yīng)用程序。
第9章是關(guān)于微服務(wù)自動(dòng)化測試技術(shù)的兩章中的第一章,介紹了重要的測試概念,例如測試金字塔,描述了測試套件中每種測試類型的相對比例,還展示了如何編寫構(gòu)成測試金字塔基礎(chǔ)的單元測試。
第10章以第9章為基礎(chǔ),描述了如何在測試金字塔中編寫其他類型的測試,包括集成測試、消費(fèi)者契約測試和組件測試等。
第11章介紹了開發(fā)生產(chǎn)就緒服務(wù)的各個(gè)方面,包括安全性、外部化配置模式和服務(wù)可觀測性模式。服務(wù)可觀測性模式包括日志聚合、應(yīng)用指標(biāo)和分布式追蹤。
第12章介紹了可用于部署服務(wù)的各種部署模式,包括虛擬機(jī)、容器和Serverless模式。還介紹了使用服務(wù)網(wǎng)格的好處,服務(wù)網(wǎng)格是在微服務(wù)架構(gòu)中處理服務(wù)間通信的一個(gè)網(wǎng)絡(luò)軟件層。
第13章介紹了如何通過采用絞殺者( Strangler)模式逐步將單體架構(gòu)重構(gòu)為微服務(wù)架構(gòu),絞殺者模式是指以服務(wù)形式實(shí)現(xiàn)新功能,從單體中提取模塊將其轉(zhuǎn)換為服務(wù)。
在學(xué)習(xí)這些章節(jié)的過程中,讀者將了解微服務(wù)架構(gòu)的不同方面。
一線大牛CEO、CTO對本文的高度評價(jià)
喻勇翻譯的這本書是近幾年我所看到的眾多論述微服務(wù)架構(gòu)書籍中最好的一本。該書圍繞微服務(wù)的架構(gòu)設(shè)計(jì),深入淺出地介紹了微服務(wù)與SOA等其他架構(gòu)的區(qū)別,軟件系統(tǒng)服務(wù)的拆分策略,微服務(wù)的同步和異步通信模式,如何使用微服務(wù)進(jìn)行事務(wù)管理,如何在微服務(wù)架構(gòu)中設(shè)計(jì)業(yè)務(wù)邏輯。同時(shí)詳細(xì)描述了微服務(wù)架構(gòu)中的測試和生產(chǎn)部署策略。該書所總結(jié)出的架構(gòu)經(jīng)驗(yàn)對設(shè)計(jì)微服務(wù)架構(gòu)有很好的指導(dǎo)作用,建議軟件研發(fā)人員認(rèn)真研讀。
陳斌,易寶支付CTO
這本書里,不僅有微服務(wù)領(lǐng)域E經(jīng)識別出來的問題、解決思路和解決方案,也有相應(yīng)的代碼例子。這本書可以幫助微服務(wù)相關(guān)人員構(gòu)建知行合- -的能....這是-本可以幫你在設(shè)計(jì)微服務(wù)架構(gòu)時(shí)做出取舍的書,它能在你處理微服務(wù)相關(guān)問題左右為難的時(shí)候給你提供參考和建議。
一蔡書, 獨(dú)立顧問,PolarisTech聯(lián)合創(chuàng)始人
書中既包含了微服務(wù)的原理、原則,又包含了實(shí)際落地中的架構(gòu)設(shè)計(jì)模式;既包含可舉- -反三的理念和概念,也包含類似領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)、Saga實(shí)現(xiàn)事務(wù)操作、CQRS構(gòu)建事件驅(qū)動(dòng)系統(tǒng)等具體可套用的范式....相信本書對于企業(yè)CIO推動(dòng)公司數(shù)字化轉(zhuǎn)型戰(zhàn)略、軟件開發(fā)者提升自身技術(shù)架構(gòu)功力,以及云原生愛好者以微服務(wù)切入最新的云原生體系,都有著極其重要的實(shí)踐指導(dǎo)意義。
一張鑫, 才云科技CEO
都可獲取,乘風(fēng)破浪會(huì)有時(shí),直掛云帆濟(jì)滄海。
總結(jié)
以上是生活随笔為你收集整理的多位大厂专家鼎力推荐,44个微服务架构设计模式pdf,程序员福利的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Swift学习笔记-《PRODUCT》
- 下一篇: WPF 窗体边框处理