1、您對微服務(wù)有何了解洽故?
微服務(wù):又稱微服務(wù) 架構(gòu)贝攒,是一種架構(gòu)風(fēng)格,它將應(yīng)用程序構(gòu)建為以業(yè)務(wù)領(lǐng)域為模型的小型自治服務(wù)集合 时甚。
通俗地說隘弊,你必須看到蜜蜂如何通過對齊六角形蠟細(xì)胞來構(gòu)建它們的蜂窩狀物哈踱。他們最初從使用各種材料的小部分開始,并繼續(xù)從中構(gòu)建一個大型蜂箱长捧。這些細(xì)胞形成圖案嚣鄙,產(chǎn)生堅固的結(jié)構(gòu)吻贿,將蜂窩的特定部分固定在一起串结。這里,每個細(xì)胞獨立于另一個細(xì)胞舅列,但它也與其他細(xì)胞相關(guān)肌割。這意味著對一個細(xì)胞的損害不會損害其他細(xì)胞,因此帐要,蜜蜂可以在不影響完整蜂箱的情況下重建這些細(xì)胞把敞。
請參考上圖。這里榨惠,每個六邊形形狀代表單獨的服務(wù)組件奋早。與蜜蜂的工作類似,每個敏捷團(tuán)隊都使用可用的框架和所選的技術(shù)堆棧構(gòu)建單獨的服務(wù)組件赠橙。就像在蜂箱中一樣耽装,每個服務(wù)組件形成一個強(qiáng)大的微服務(wù)架構(gòu),以提供更好的可擴(kuò)展性期揪。此外掉奄,敏捷團(tuán)隊可以單獨處理每個服務(wù)組件的問題,而對整個應(yīng)用程序沒有影響或影響最小凤薛。
2姓建、微服務(wù)架構(gòu)有哪些優(yōu)勢?
- 獨立開發(fā) – 所有微服務(wù)都可以根據(jù)各自的功能輕松開發(fā)
- 獨立部署 – 基于其服務(wù)缤苫,可以在任何應(yīng)用程序中單獨部署它們
- 故障隔離 – 即使應(yīng)用程序的一項服務(wù)不起作用速兔,系統(tǒng)仍可繼續(xù)運行
- 混合技術(shù)堆棧 – 可以使用不同的語言和技術(shù)來構(gòu)建同一應(yīng)用程序的不同服務(wù)
- 粒度縮放 – 單個組件可根據(jù)需要進(jìn)行縮放,無需將所有組件縮放在一起
3活玲、微服務(wù)有哪些特點涣狗?
- 解耦 – 系統(tǒng)內(nèi)的服務(wù)很大程度上是分離的。因此翼虫,整個應(yīng)用程序可以輕松構(gòu)建屑柔,更改和擴(kuò)展
- 組件化 – 微服務(wù)被視為可以輕松更換和升級的獨立組件
- 業(yè)務(wù)能力 – 微服務(wù)非常簡單,專注于單一功能
- 自治 – 開發(fā)人員和團(tuán)隊可以彼此獨立工作珍剑,從而提高速度
- 持續(xù)交付 – 通過軟件創(chuàng)建掸宛,測試和批準(zhǔn)的系統(tǒng)自動化,允許頻繁發(fā)布軟件
- 責(zé)任 – 微服務(wù)不關(guān)注應(yīng)用程序作為項目招拙。相反唧瘾,他們將應(yīng)用程序視為他們負(fù)責(zé)的產(chǎn)品
- 分散治理 – 重點是使用正確的工具來做正確的工作措译。這意味著沒有標(biāo)準(zhǔn)化模式或任何技術(shù)模式。開發(fā)人員可以自由選擇最有用的工具來解決他們的問題
- 敏捷 – 微服務(wù)支持敏捷開發(fā)饰序。任何新功能都可以快速開發(fā)并再次丟棄
4领虹、設(shè)計微服務(wù)的最佳實踐是什么?
以下是設(shè)計微服務(wù)的最佳實踐:
5求豫、微服務(wù)架構(gòu)如何運作塌衰?
微服務(wù)架構(gòu)具有以下組件:
- 客戶端 – 來自不同設(shè)備的不同用戶發(fā)送請求。
- 身份提供商 – 驗證用戶或客戶身份并頒發(fā)安全令牌蝠嘉。
- API 網(wǎng)關(guān) – 處理客戶端請求最疆。
- 靜態(tài)內(nèi)容 – 容納系統(tǒng)的所有內(nèi)容。
- 管理 – 在節(jié)點上平衡服務(wù)并識別故障蚤告。
- 服務(wù)發(fā)現(xiàn) – 查找微服務(wù)之間通信路徑的指南努酸。
- 內(nèi)容交付網(wǎng)絡(luò) – 代理服務(wù)器及其數(shù)據(jù)中心的分布式網(wǎng)絡(luò)。
- 遠(yuǎn)程服務(wù) – 啟用駐留在 IT 設(shè)備網(wǎng)絡(luò)上的遠(yuǎn)程訪問信息杜恰。
6获诈、微服務(wù)架構(gòu)的優(yōu)缺點是什么?
7心褐、單片舔涎,SOA 和微服務(wù)架構(gòu)有什么區(qū)別?
- 單片架構(gòu)類似于大容器檬寂,其中應(yīng)用程序的所有軟件組件組裝在一起并緊密封裝终抽。
- 一個面向服務(wù)的架構(gòu)是一種相互通信服務(wù)的集合。通信可以涉及簡單的數(shù)據(jù)傳遞桶至,也可以涉及兩個或多個協(xié)調(diào)某些活動的服務(wù)昼伴。
- 微服務(wù)架構(gòu)是一種架構(gòu)風(fēng)格,它將應(yīng)用程序構(gòu)建為以業(yè)務(wù)域為模型的小型自治服務(wù)集合镣屹。
8圃郊、在使用微服務(wù)架構(gòu)時,您面臨哪些挑戰(zhàn)女蜈?
開發(fā)一些較小的微服務(wù)聽起來很容易持舆,但開發(fā)它們時經(jīng)常遇到的挑戰(zhàn)如下。
- 自動化組件:難以自動化伪窖,因為有許多較小的組件逸寓。因此,對于每個組件覆山,我們必須遵循 Build竹伸,Deploy 和 Monitor 的各個階段。
- 易感性:將大量組件維護(hù)在一起變得難以部署簇宽,維護(hù)勋篓,監(jiān)控和識別問題吧享。它需要在所有組件周圍具有很好的感知能力。
- 配置管理:有時在各種環(huán)境中維護(hù)組件的配置變得困難譬嚣。
- 調(diào)試:很難找到錯誤的每一項服務(wù)钢颂。維護(hù)集中式日志記錄和儀表板以調(diào)試問題至關(guān)重要。
9拜银、SOA 和微服務(wù)架構(gòu)之間的主要區(qū)別是什么殊鞭?
SOA 和微服務(wù)之間的主要區(qū)別如下:
10、微服務(wù)有什么特點盐股?
您可以列出微服務(wù)的特征钱豁,如下所示:
11、什么是領(lǐng)域驅(qū)動設(shè)計疯汁?
12、為什么需要域驅(qū)動設(shè)計(DDD)卵酪?
13幌蚊、什么是無所不在的語言?
如果您必須定義泛在語言(UL)溃卡,那么它是特定域的開發(fā)人員和用戶使用的通用語言溢豆,通過該語言可以輕松解釋域。
無處不在的語言必須非常清晰瘸羡,以便它將所有團(tuán)隊成員放在同一頁面上漩仙,并以機(jī)器可以理解的方式進(jìn)行翻譯
14、什么是凝聚力犹赖?
模塊內(nèi)部元素所屬的程度被認(rèn)為是凝聚力队他。
15、什么是耦合峻村?
組件之間依賴關(guān)系強(qiáng)度的度量被認(rèn)為是耦合麸折。一個好的設(shè)計總是被認(rèn)為具有高內(nèi)聚力和低耦合性。
16粘昨、什么是 REST / RESTful 以及它的用途是什么垢啼?
Representational State Transfer(REST)/ RESTful Web 服務(wù)是一種幫助計算機(jī)系統(tǒng)通過 Internet 進(jìn)行通信的架構(gòu)風(fēng)格。這使得微服務(wù)更容易理解和實現(xiàn)张肾。
微服務(wù)可以使用或不使用 RESTful API 實現(xiàn)芭析,但使用 RESTful API 構(gòu)建松散耦合的微服務(wù)總是更容易。
17吞瞪、你對 Spring Boot 有什么了解馁启?
事實上,隨著新功能的增加尸饺,彈簧變得越來越復(fù)雜进统。如果必須啟動新的 spring 項 目助币,則必須添加構(gòu)建路或添加 maven 依賴項,配置應(yīng)用程序服務(wù)器螟碎,添加 spring配置眉菱。所以一切都必須從頭開始。
Spring Boot 是解決這個問題的方法掉分。使用 spring boot 可以避免所有樣板代碼和配置俭缓。因此,基本上認(rèn)為自己就好像你正在烘烤蛋糕一樣酥郭,春天就像制作蛋糕所需的成分一樣华坦,彈簧靴就是你手中的完整蛋糕磕仅。
18尘奏、什么是 Spring 引導(dǎo)的執(zhí)行器?
Spring Boot 執(zhí)行程序提供了 restful Web 服務(wù)胡岔,以訪問生產(chǎn)環(huán)境中運行應(yīng)用程序的當(dāng)前狀態(tài)椿息。在執(zhí)行器的幫助下歹袁,您可以檢查各種指標(biāo)并監(jiān)控您的應(yīng)用程序。
19寝优、什么是 Spring Cloud条舔?
根據(jù) Spring Cloud 的官方網(wǎng)站,Spring Cloud 為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理乏矾,服務(wù)發(fā)現(xiàn)孟抗,斷路器,智能路由钻心,領(lǐng)導(dǎo)選舉凄硼,分布式會話,集群狀態(tài))扔役。
20帆喇、Spring Cloud 解決了哪些問題?
在使用 Spring Boot 開發(fā)分布式微服務(wù)時亿胸,我們面臨的問題很少由 Spring Cloud解決坯钦。
- 與分布式系統(tǒng)相關(guān)的復(fù)雜性 – 包括網(wǎng)絡(luò)問題,延遲開銷侈玄,帶寬問題婉刀,安全問題。
- 處理服務(wù)發(fā)現(xiàn)的能力 – 服務(wù)發(fā)現(xiàn)允許集群中的進(jìn)程和服務(wù)找到彼此并進(jìn)行通信序仙。
- 解決冗余問題 – 冗余問題經(jīng)常發(fā)生在分布式系統(tǒng)中突颊。
- 負(fù)載平衡 – 改進(jìn)跨多個計算資源(例如計算機(jī)集群,網(wǎng)絡(luò)鏈接,中央處理單元)的工作負(fù)載分布律秃。
- 減少性能問題 – 減少因各種操作開銷導(dǎo)致的性能問題爬橡。
21、在 Spring MVC 應(yīng)用程序中使用 WebMvcTest 注釋有什么用處棒动?
在測試目標(biāo)只關(guān)注 Spring MVC 組件的情況下糙申,WebMvcTest 注釋用于單元測試Spring MVC 應(yīng)用程序。在上面顯示的快照中船惨,我們只想啟動 ToTestController柜裸。執(zhí)行此單元測試時,不會啟動所有其他控制器和映射粱锐。
22疙挺。你能否給出關(guān)于休息和微服務(wù)的要點?
雖然您可以通過多種方式實現(xiàn)微服務(wù)怜浅,但 REST over HTTP 是實現(xiàn)微服務(wù)的一種方式铐然。REST 還可用于其他應(yīng)用程序,如 Web 應(yīng)用程序海雪,API 設(shè)計和 MVC 應(yīng)用程序锦爵,以提供業(yè)務(wù)數(shù)據(jù)。
微服務(wù)是一種體系結(jié)構(gòu)奥裸,其中系統(tǒng)的所有組件都被放入單獨的組件中,這些組件可以單獨構(gòu)建沪袭,部署和擴(kuò)展湾宙。微服務(wù)的某些原則和最佳實踐有助于構(gòu)建彈性應(yīng)用程序。
簡而言之冈绊,您可以說 REST 是構(gòu)建微服務(wù)的媒介侠鳄。
23、什么是不同類型的微服務(wù)測試死宣?
在使用微服務(wù)時伟恶,由于有多個微服務(wù)協(xié)同工作,測試變得非常復(fù)雜毅该。因此博秫,測試分為不同的級別。
- 在底層眶掌,我們有面向技術(shù)的測試挡育,如單元測試和性能測試。這些是完全自動化的朴爬。
- 在中間層面即寒,我們進(jìn)行了諸如壓力測試和可用性測試之類的探索性測試。
- 在頂層, 我們的 驗收測試數(shù)量很少母赵。這些驗收測試有助于利益相關(guān)者理解和驗證軟件功能逸爵。
24、您對 Distributed Transaction 有何了解凹嘲?
分布式事務(wù)是指單個事件導(dǎo)致兩個或多個不能以原子方式提交的單獨數(shù)據(jù)源的突
變的任何情況师倔。在微服務(wù)的世界中,它變得更加復(fù)雜施绎,因為每個服務(wù)都是一個工
作單元溯革,并且大多數(shù)時候多個服務(wù)必須協(xié)同工作才能使業(yè)務(wù)成功。
25谷醉、什么是 Idempotence 以及它在哪里使用致稀?
冪等性是能夠以這樣的方式做兩次事情的特性,即最終結(jié)果將保持不變俱尼,即好像它只做了一次抖单。
用法:在遠(yuǎn)程服務(wù)或數(shù)據(jù)源中使用 Idempotence,這樣當(dāng)它多次接收指令時遇八,它只處理指令一次矛绘。
26、什么是有界上下文刃永?
有界上下文是域驅(qū)動設(shè)計的核心模式货矮。DDD 戰(zhàn)略設(shè)計部門的重點是處理大型模型和團(tuán)隊。DDD 通過將大型模型劃分為不同的有界上下文并明確其相互關(guān)系來處理大型模型斯够。
27囚玫、什么是雙因素身份驗證?
雙因素身份驗證為帳戶登錄過程啟用第二級身份驗證读规。
因此抓督,假設(shè)用戶必須只輸入用戶名和密碼,那么這被認(rèn)為是單因素身份驗證束亏。
28铃在、雙因素身份驗證的憑據(jù)類型有哪些?
這三種憑證是:
29碍遍、什么是客戶證書定铜?
客戶端系統(tǒng)用于向遠(yuǎn)程服務(wù)器發(fā)出經(jīng)過身份驗證的請求的一種數(shù)字證書稱為客戶端證書∪妇茫客戶端證書在許多相互認(rèn)證設(shè)計中起著非常重要的作用宿稀,為請求者的身份提供了強(qiáng)有力的保證。
30赖捌、PACT 在微服務(wù)架構(gòu)中的用途是什么祝沸?
PACT 是一個開源工具矮烹,允許測試服務(wù)提供者和消費者之間的交互,與合同隔離罩锐,從而提高微服務(wù)集成的可靠性奉狈。
微服務(wù)中的用法
- 用于在微服務(wù)中實現(xiàn)消費者驅(qū)動的合同。
- 測試微服務(wù)的消費者和提供者之間的消費者驅(qū)動的合同涩惑。
31仁期、什么是 OAuth?
OAuth 代表開放授權(quán)協(xié)議竭恬。這允許通過在 HTTP 服務(wù)上啟用客戶端應(yīng)用程序(例如第三方提供商 Facebook跛蛋,GitHub 等)來訪問資源所有者的資源。因此痊硕,您可以在不使用其憑據(jù)的情況下與另一個站點共享存儲在一個站點上的資源赊级。
32、康威定律是什么岔绸?
“任何 設(shè)計 系統(tǒng) 的組 織( 廣泛 定義 )都 將產(chǎn) 生一 種設(shè) 計理逊, 其結(jié) 構(gòu)是 組織 通信 結(jié)構(gòu)的副 本『腥啵” – Mel Conway
該法律基本上試圖傳達(dá)這樣一個事實:為了使軟件模塊起作用晋被,整個團(tuán)隊?wèi)?yīng)該進(jìn)行良好的溝通。因此刚盈,系統(tǒng)的結(jié)構(gòu)反映了產(chǎn)生它的組織的社會邊界羡洛。
33、合同測試你懂什么藕漱?
根據(jù) Martin Flower 的說法翘县,合同測試是在外部服務(wù)邊界進(jìn)行的測試,用于驗證其是否符合消費服務(wù)預(yù)期的合同谴分。
此外,合同測試不會深入測試服務(wù)的行為镀脂。更確切地說牺蹄,它測試該服務(wù)調(diào)用的輸入&輸出包含所需的屬性和所述響應(yīng)延遲,吞吐量是允許的限度內(nèi)薄翅。
34沙兰、什么是端到端微服務(wù)測試?
端到端測試驗證了工作流中的每個流程都正常運行翘魄。這可確保系統(tǒng)作為一個整體協(xié)同工作并滿足所有要求鼎天。
通俗地說,你可以說端到端測試是一種測試暑竟,在特定時期后測試所有東西斋射。
35、Container 在微服務(wù)中的用途是什么?
容器是管理基于微服務(wù)的應(yīng)用程序以便單獨開發(fā)和部署它們的好方法罗岖。您可以將微服務(wù)封裝在容器映像及其依賴項中涧至,然后可以使用它來滾動按需實例的微服務(wù),而無需任何額外的工作桑包。
36南蓬、什么是微服務(wù)架構(gòu)中的 DRY?
DRY 代表不要重復(fù)自己哑了。它基本上促進(jìn)了重用代碼的概念赘方。這導(dǎo)致開發(fā)和共享庫,
這反過來導(dǎo)致緊密耦合弱左。
37窄陡、什么是消費者驅(qū)動的合同(CDC)?
這基本上是用于開發(fā)微服務(wù)的模式科贬,以便它們可以被外部系統(tǒng)使用泳梆。當(dāng)我們處理微服務(wù)時,有一個特定的提供者構(gòu)建它榜掌,并且有一個或多個使用微服務(wù)的消費者优妙。
通常,提供程序在 XML 文檔中指定接口憎账。但在消費者驅(qū)動的合同中套硼,每個服務(wù)消費者都傳達(dá)了提供商期望的接口。
38胞皱、Web邪意,RESTful API 在微服務(wù)中的作用是什么?
微服務(wù)架構(gòu)基于一個概念反砌,其中所有服務(wù)應(yīng)該能夠彼此交互以構(gòu)建業(yè)務(wù)功能雾鬼。因此,要實現(xiàn)這一點宴树,每個微服務(wù)必須具有接口策菜。這使得 Web API 成為微服務(wù)的一個非常重要的推動者。RESTful API 基于 Web 的開放網(wǎng)絡(luò)原則酒贬,為構(gòu)建微服務(wù)架構(gòu)的各個組件之間的接口提供了最合理的模型又憨。
39、您對微服務(wù)架構(gòu)中的語義監(jiān)控有何了解锭吨?
語義監(jiān)控蠢莺,也稱為 綜合監(jiān)控, 將自動化測試與監(jiān)控應(yīng)用程序相結(jié)合零如,以檢測業(yè)務(wù)失敗因素躏将。
40锄弱、我們?nèi)绾芜M(jìn)行跨功能測試?
跨功能測試是對非功能性需求的驗證耸携,即那些無法像普通功能那樣實現(xiàn)的需求棵癣。
41夺衍、我們?nèi)绾卧跍y試中消除非決定論狈谊?
非確定性測試(NDT)基本上是不可靠的測試。所以沟沙,有時可能會發(fā)生它們通過河劝,顯然有時它們也可能會失敗。當(dāng)它們失敗時矛紫,它們會重新運行通過赎瞎。
從測試中刪除非確定性的一些方法如下:
- 隔離
- 異步
- 遠(yuǎn)程服務(wù)
- 隔離
- 時間
- 資源泄漏
42、Mock 或 Stub 有什么區(qū)別颊咬?
存根
- 一個有助于運行測試的虛擬對象务甥。
- 在某些可以硬編碼的條件下提供固定行為。
- 永遠(yuǎn)不會測試存根的任何其他行為喳篇。
例如敞临,對于空堆棧,您可以創(chuàng)建一個只為 empty()方法返回 true 的存根麸澜。因此挺尿,這并不關(guān)心堆棧中是否存在元素。
嘲笑
- 一個虛擬對象炊邦,其中最初設(shè)置了某些屬性编矾。
- 此對象的行為取決于 set 屬性。
- 也可以測試對象的行為馁害。
例如窄俏,對于 Customer 對象,您可以通過設(shè)置名稱和年齡來模擬它碘菜。您可以將 age設(shè)置為 12裆操,然后測試 isAdult()方法,該方法將在年齡大于 18 時返回 true炉媒。因此,您的 Mock Customer 對象適用于指定的條件昆烁。
43吊骤、您對 Mike Cohn 的測試金字塔了解多少?
Mike Cohn 提供了一個名為 Test Pyramid 的模型静尼。這描述了軟件開發(fā)所需的自動化測試類型白粉。
44传泊、Docker 的目的是什么?
Docker 提供了一個可用于托管任何應(yīng)用程序的容器環(huán)境鸭巴。在此眷细,軟件應(yīng)用程序和支持它的依賴項緊密打包在一起。
因此鹃祖,這個打包的產(chǎn)品被稱為 Container溪椎,因為它是由 Docker 完成的,所以它被稱為 Docker 容器恬口!
45校读、什么是金絲雀釋放?
Canary Releasing 是一種降低在生產(chǎn)中引入新軟件版本的風(fēng)險的技術(shù)祖能。這是通過將變更緩慢地推廣到一小部分用戶歉秫,然后將其發(fā)布到整個基礎(chǔ)架構(gòu),即將其提供給每個人來完成的养铸。
46雁芙、什么是持續(xù)集成(CI)?
持續(xù)集成(CI)是每次團(tuán)隊成員提交版本控制更改時自動構(gòu)建和測試代碼的過程钞螟。這鼓勵開發(fā)人員通過在每個小任務(wù)完成后將更改合并到共享版本控制存儲庫來共享代碼和單元測試兔甘。
47、什么是持續(xù)監(jiān)測筛圆?
持續(xù)監(jiān)控深入監(jiān)控覆蓋范圍裂明,從瀏覽器內(nèi)前端性能指標(biāo),到應(yīng)用程序性能太援,再到主機(jī)虛擬化基礎(chǔ)架構(gòu)指標(biāo)闽晦。
48、架構(gòu)師在微服務(wù)架構(gòu)中的角色是什么提岔?
微服務(wù)架構(gòu)中的架構(gòu)師扮演以下角色:
- 決定整個軟件系統(tǒng)的布局仙蛉。
- 幫助確定組件的分區(qū)。因此碱蒙,他們確保組件相互粘合荠瘪,但不緊密耦合。
- 與開發(fā)人員共同編寫代碼赛惩,了解日常生活中面臨的挑戰(zhàn)哀墓。
- 為開發(fā)微服務(wù)的團(tuán)隊提供某些工具和技術(shù)的建議。
- 提供技術(shù)治理喷兼,以便技術(shù)開發(fā)團(tuán)隊遵循微服務(wù)原則篮绰。
49、我們可以用微服務(wù)創(chuàng)建狀態(tài)機(jī)嗎季惯?
我們知道擁有自己的數(shù)據(jù)庫的每個微服務(wù)都是一個可獨立部署的程序單元吠各,這反過來又讓我們可以創(chuàng)建一個狀態(tài)機(jī)臀突。因此,我們可以為特定的微服務(wù)指定不同的狀態(tài)和事件贾漏。
例如候学,我們可以定義 Order 微服務(wù)。訂單可以具有不同的狀態(tài)纵散。Order 狀態(tài)的轉(zhuǎn)換可以是 Order 微服務(wù)中的獨立事件梳码。
50、什么是微服務(wù)中的反應(yīng)性擴(kuò)展困食?
Reactive Extensions 也稱為 Rx边翁。這是一種設(shè)計方法,我們通過調(diào)用多個服務(wù)來收集結(jié)果硕盹,然后編譯組合響應(yīng)符匾。這些調(diào)用可以是同步或異步,阻塞或非阻塞瘩例。Rx是分布式系統(tǒng)中非常流行的工具啊胶,與傳統(tǒng)流程相反。
希望這些微服務(wù)面試問題可以幫助您進(jìn)行微服務(wù)架構(gòu)師訪談 垛贤。
最后福利來了
以上面試題出自我整理的“1000+互聯(lián)網(wǎng) Java 工程師面試題系列”(PDF版)焰坪,有將近五百頁的文檔,內(nèi)容覆蓋了:Java聘惦、MyBatis某饰、ZooKeeper、Dubbo善绎、Elasticsearch黔漂、Memcached、Redis禀酱、MySQL炬守、Spring、Spring Boot剂跟、Spring Cloud减途、RabbitMQ、Kafka曹洽、Linux 等技術(shù)棧鳍置。
資料很全面,我這里就不全部展示了送淆,有需要的可以進(jìn)我的學(xué)習(xí)交流群:909666042 找管理免費獲取
部分資料展示