微服務開發實戰,一個案例,手把手帶你入門

平日裏,都是看別人的文章,雖開公衆號寫了很多,但像樣的很少。年底了,年終總結也沒來得及寫,爲了輸出點像樣的東西,馬上就着手這個系列。一個鍵一個字母的敲,邊敲邊寫,文章還在持續更新中,直至完整。相信經過這個系列的系統練習,能有一個大跨步的提高。nginx

專欄簡介(是什麼?)

結合SpringCloud、SpringCloudAlibaba、Dubbo等開源套件,基於某商場停車業務需求,進行微服務開發實戰,力爭經過一個案例的實操,掌握微服務架構中經常使用的技能點,輕鬆入門。程序員

爲何要寫這個專欄(爲何?)

微服務近兩年的火熱,也將不少公司的架構慢慢轉向微服務,但要直接上手微服務,還須要能過實操演練,不斷提高,才能在工做中游刃有餘。spring

網絡上相關資源不少,但大多散亂無章,不成體系,不利於系統性掌握,沒法一步步的深刻其中,更不能深入掌握各個組件在項目中實際融合狀況。apache

雖然也有一些案例,但缺乏相關的文檔細節描述,對初學者而言,僅靠閱讀代碼,不免會只知其一;不知其二。因而,我就琢磨寫一個貼合實際場景的小例子,業務無須很複雜,能將這一套技術體系串連起來,本身能夠跟着動手實操,經過一步一步的上手,加深對技術棧的理解。緩存

經過本專欄要達成什麼目標(到哪裏去?)

本專欄將帶你完整性的實施一個項目,從需求整理、分析設計、存儲設計、關鍵業務流程設計、編碼、測試(單元測試,系統測試)、部署上線、平常監控維護等等。網絡

時下采用敏捷研發模式作產品已經不是什麼新鮮事,本專欄中也會適當融入一些敏捷方法,進行團隊協做演練。程序員同窗廣泛比較關注硬技能的提高,因此掌握關鍵技能很重要。同時,軟技能也要隨着硬技能的提高,一樣獲得鍛鍊昇華,比較團隊協做能力、溝通理解能力、解決問題能力、領導管理能力等等。mybatis

本專欄實戰案例涉及到的技術棧

作Java,繞不開Spring。用Java作微服務開發,也繞不開Spring Cloud。但隨着Dubbo的重啓,並交給Apache開源社區維護後,Dubbo生態愈來愈完善。雖然拿Spring Cloud與Dubbo做比較不合適,但很多朋友在技術選型時會糾結選擇Dubbo仍是Spring Cloud,spring-cloud-alibaba的出現,將Dubbo生態完美的與Spring Cloud生態融合在一塊兒。你不用再糾結選擇Dubbo仍是Spring Cloud,二者能夠兼容的很好。架構

下面羅列下可能會使用到的技術棧:負載均衡

  • 反向代理:nginx,可作動靜分離部署
  • 統一網關:基於spring-cloud-gateway,配合JWT進行的簡單的驗權操做
  • 分佈式事務:Seata,阿里內部分佈式事務產品不斷迭代演進而來。
  • 降級、限流:hysrix/Sentinel
  • 服務管理:Nacos
  • 分佈式配置中心:Nacos
  • 客戶端負載均衡:openFeign
  • 異步消息:RocketMQ,阿里開源,交由Apache孵化
  • 鏈路跟蹤:Skywalking,華爲開源,交由Apache孵化
  • 分佈式緩存:Redis
  • 健康監控:spring-boot-admin
  • 分佈式鎖:Redission
  • 代碼簡化:Lambok,mybatis-plus,mybatis-generator
  • RPC框架:apache dubbo

實操項目中也會涉及到一些小組件、小技巧,更加貼近商業項目開發實戰,一同動手行動起來吧,微服務架構並不深奧,你能夠掌握的更好。框架

專欄適宜人羣

程序員、初級架構師、IT從業者、項目管理人員、IT管理人員、產品經理、業務架構師

連接地址:https://xiaozhuanlan.com/msa-practice

相關文章
相關標籤/搜索