官术网_书友最值得收藏!

自序

大家好,我是十三。

非常感謝你們閱讀本書,在技術道路上,我們從此不再獨行。

寫作背景

2017年2月24日,筆者正式開啟技術寫作之路,同時也開始在GitHub網(wǎng)站上做開源項目,由于一直堅持更新文章和開源項目,慢慢地被越來越多的人所熟悉。2018年6月7日,電子工業(yè)出版社的陳林編輯通過郵件聯(lián)系筆者并邀請筆者出書。從此,筆者與電子工業(yè)出版社結緣。2018年筆者也被不同的平臺邀請制作付費專欄課程。自2018年9月起,筆者陸陸續(xù)續(xù)在CSDN圖文課、實驗樓、藍橋云課、掘金小冊、極客時間等平臺上線了多個付費專欄和課程。2020年,筆者與電子工業(yè)出版社的陳林編輯聯(lián)系并溝通了寫作事宜,之后簽訂了約稿合同,第一本書在2021年正式出版。

筆者寫作的初衷是希望把自己對技術的理解及實戰(zhàn)項目開發(fā)的經(jīng)驗分享給讀者。過去幾年的經(jīng)歷可以整理成一張圖(如圖1所示),免費文章→付費專欄→付費視頻→實體圖書,從0到1,從無到有,都是一步一步走過來的。這些也是筆者的寫作背景。

同時,筆者也會將付費專欄和圖書中用到的實戰(zhàn)項目開源到GitHub和Gitee兩個開源代碼平臺上,本書中基于Spring Cloud Alibaba的微服務實戰(zhàn)項目newbee-mall-cloud是筆者開發(fā)的一個開源項目。

圖1 筆者的寫作經(jīng)歷

隨著越來越完善的微服務技術棧的發(fā)布,以及越來越多的微服務項目實際的落地和上線,使用Java技術棧的企業(yè)應該都在嘗試或已經(jīng)讓各自的微服務項目落地了。通過招聘網(wǎng)站的信息和每次面試的反饋,Java開發(fā)人員也能夠清晰地認識到:微服務技術已經(jīng)逐漸成為Java開發(fā)人員必須掌握的一個進階知識點了。

作為技術人員,各位讀者一定對微服務架構有所耳聞,也能夠看出它會是未來的一種流行架構,進而也非常希望自己能夠掌握微服務技術體系,甚至動手實踐完成微服務項目的開發(fā)與維護,掌握微服務技術這項非常寶貴的技能。不過,在掌握這項技能時,可能會遇到如下幾個問題:

? 微服務技術的體系復雜,從何學起?學習哪些知識點?有沒有簡潔而有效的學習路徑?

? 微服務架構中的組件和中間件很多,如何選擇一套合適且可落地的方案?

? 在進行微服務架構的項目搭建與開發(fā)時,會遇到哪些問題?這些問題又該如何解決?

? 想要自己動手開發(fā)一個大型微服務項目,有沒有適合的源碼?有沒有可以借鑒的經(jīng)驗?

針對這些問題,筆者結合自己的開發(fā)經(jīng)驗和一個可操作的大型微服務實戰(zhàn)項目,從復雜的微服務體系中梳理一條明確而有效的學習路徑,讓讀者可以成體系地學習微服務架構,本書的知識點規(guī)劃和學習路徑如圖2所示。

以上就是筆者為各位開發(fā)人員整理的微服務架構項目的學習路徑和實戰(zhàn)步驟:梳理微服務架構、拆解微服務架構搭建的步驟、搭建并整合各個微服務組件、開發(fā)一個大型的微服務項目。

圖2 本書的知識點規(guī)劃和學習路徑

筆者先對概念性的知識進行介紹,讓讀者了解微服務的“前世今生”,然后介紹微服務的技術選型,包括技術棧的介紹與對比,并確定實戰(zhàn)項目所選擇的微服務技術組件,接著對這些技術組件進行講解,包括組件的作用、搭建和優(yōu)化。書中對Nacos、Spring Cloud Gateway、Sentinel、Seata等組件進行搭建和實際的整合,完成微服務架構實戰(zhàn)里中間件搭建和整合的工作。除基本的整合外,也對重點技術棧的源碼進行了詳細的剖析,讓讀者能夠知其然也知其所以然。搭建并整合完各個中間件之后,就是各個服務的編碼和功能實現(xiàn),在本套書的下冊中會對一個大型的商城項目進行拆解和微服務化,并從零到一落地一個功能完整、流程完善的微服務項目。本書內(nèi)容由淺入深,幫助讀者深入理解微服務技術,掌握微服務項目開發(fā)的核心知識點,并且能夠應用到自己所開發(fā)的項目中。

你會學到什么

本書的代碼基于Spring Boot 2.6.3版本和Spring Cloud Alibaba 2021.0.1.0版本。筆者通過14章的內(nèi)容由淺入深、逐一擊破微服務架構項目中的難點,讓各位讀者能夠實際地體驗微服務架構項目的搭建和開發(fā)。另外,本書從書稿整理完成至正式出版耗時近一年時間,在這段時間里,Spring Boot和Spring Cloud Alibaba及相關技術棧也有一些版本升級,如Spring Boot 3.x、Spring Cloud Alibaba 2022.x。對于這些情況,筆者會在本書實戰(zhàn)項目的開源倉庫中創(chuàng)建不同的代碼分支,保持實戰(zhàn)項目的源碼更新,保證讀者學習更新的知識。

讀者學習本書的內(nèi)容,會有以下收獲。

? Spring Cloud Alibaba微服務技術組件的整合與使用。

? 服務治理之服務注冊與服務發(fā)現(xiàn)。

? 服務間的通信方式。

? 負載均衡器的原理與實踐。

? 微服務網(wǎng)關搭建與使用。

? 分布式事務的處理。

? 服務容錯之限流及熔斷。

? 微服務間的鏈路追蹤。

? ELK日志中心的搭建與使用。

? 針對各個知識點的實戰(zhàn)源碼和一套可執(zhí)行的微服務項目源碼。

適宜人群

? 從事Java Web開發(fā)的技術人員。

? 希望進階高級開發(fā)的后端開發(fā)人員。

? 對微服務架構感興趣、想要了解Spring Cloud熱門組件的開發(fā)人員。

? 希望將微服務架構及相關技術實際運用到項目中的開發(fā)人員。

? 想要獨立完成一個微服務架構項目的開發(fā)人員。

源代碼

本書每個實戰(zhàn)章節(jié)都有對應的源碼并提供下載,讀者可以在本書封底掃碼獲取。

最終的實戰(zhàn)項目是筆者的開源項目newbee-mall-cloud,源碼在開源網(wǎng)站GitHub和Gitee上都能搜索并下載更新的源碼。

? 網(wǎng)址1

? 網(wǎng)址2

致謝

感謝電子工業(yè)出版社的陳林老師、石悅老師、美術編輯李玲和其他老師,本書能夠順利出版離不開你們的奉獻,感謝你們辛苦、嚴謹?shù)墓ぷ鳌?/p>

感謝newbee-mall系列開源倉庫的各位用戶及筆者專欄文章的所有讀者。他們提供了非常多的修改和優(yōu)化意見,使這個微服務實戰(zhàn)項目變得更加完善,也為筆者提供了持續(xù)寫作的動力。

感謝掘金社區(qū)的運營負責人優(yōu)弧和運營人員Captain。本書部分內(nèi)容是基于掘金小冊《Spring Cloud Alibaba大型微服務項目實戰(zhàn)》中的章節(jié)來擴展的,本書能順利出版也得到了掘金社區(qū)的大力支持。

特別感謝家人,沒有他們的默默付出和大力的支持,筆者不可能有如此多的時間和精力專注于本書的寫作。

感謝每一位沒有提及名字,但是曾經(jīng)幫助過筆者的貴人。

十三

2023年9月1日 于杭州

主站蜘蛛池模板: 溧阳市| 汉沽区| 察雅县| 大足县| 南宫市| 武乡县| 乌拉特中旗| 台州市| 郸城县| 平江县| 三亚市| 民丰县| 沙雅县| 景洪市| 闻喜县| 鄂尔多斯市| 嘉鱼县| 渝北区| 灵宝市| 长汀县| 平罗县| 美姑县| 乐至县| 湘乡市| 油尖旺区| 宜兰市| 德保县| 武山县| 德格县| 南靖县| 高平市| 仁化县| 达孜县| 蒙阴县| 五河县| 兴宁市| 莱芜市| 同仁县| 岳西县| 故城县| 洪湖市|