Java Springboot 開源微服務架構(gòu)管理后臺搭建實戰(zhàn)
簡介
觀看本文之前,默認讀者已經(jīng)是工作中的同學了,最起碼懂得開發(fā)工具怎么用,如果不會,就可以略過過程,直接收藏吧,以后會用得到。
本文重點是調(diào)試過程,不是項目地址,不過只需要地址的,可以直接調(diào)到末尾獲取鏈接獲取方法。
最近公司,要上spring boot 微服務管理后臺,找來找去,找到一個開源的項目,然后進行了修改調(diào)試。閑來無事,把過程做個記錄,沒有調(diào)試過的小伙伴,趕緊關(guān)注,點贊,轉(zhuǎn)發(fā),收藏吧。文章末尾有開源項目鏈接獲取方法。開源項目好找,但調(diào)試實戰(zhàn)不易,請君珍惜。
項目總架構(gòu)介紹
當然此項目是開源了,項目架構(gòu)是開源作者畫的,直接上圖了。尊重感謝開源作者。

項目主要功能預覽
1、統(tǒng)一認證功能:支持oauth2的四種模式登錄、支持用戶名、密碼加圖形驗證碼登錄、支持手機號加密碼登錄、支持openId登錄、支持第三方系統(tǒng)單點登錄
2、分布式系統(tǒng)基礎(chǔ)支撐:服務注冊發(fā)現(xiàn)、路由與負載均衡、服務降級與熔斷、服務限流(url/方法級別)、統(tǒng)一配置中心、統(tǒng)一日志中心、統(tǒng)一搜索中心、統(tǒng)一分布式緩存操作類、cacheManager配置擴展、分布式鎖、分布式任務調(diào)度器、支持CI/CD持續(xù)集成(包括前端和后端)、分布式Id生成器、分布式事務(強一致性/最終一致性)、日志鏈路追蹤
3、系統(tǒng)監(jiān)控功能:服務調(diào)用鏈監(jiān)控、應用拓撲圖、慢查詢SQL監(jiān)控、應用吞吐量監(jiān)控(qps、rt)、服務降級、熔斷監(jiān)控、服務限流監(jiān)控、微服務服務監(jiān)控、服務器監(jiān)控、redis監(jiān)控、mysql監(jiān)控、elasticSearch監(jiān)控、nacos監(jiān)控、prometheus監(jiān)控
4、業(yè)務基礎(chǔ)功能支撐:多租戶(應用隔離)、高性能方法級冪等性支持、RBAC權(quán)限管理,實現(xiàn)細粒度控制(方法、url級別)、快速實現(xiàn)導入、導出功能、數(shù)據(jù)庫訪問層自動實現(xiàn)crud操作、代碼生成器、基于Hutool的各種便利開發(fā)工具、網(wǎng)關(guān)聚合所有服務的Swagger接口文檔、統(tǒng)一跨域處理、統(tǒng)一異常處理。
核心調(diào)試部分
環(huán)境:16G內(nèi)存的電腦、JDK1.8以上,Maven3.6以上,開發(fā)工具Idea,mysql 5.7以上,redis 3以上版本。
1、導入項目從開源github上,或者gitee上的地址,如下圖操作,如果網(wǎng)快的畫基本幾分鐘就好了,如果網(wǎng)速慢,那就等等吧。

2、導入完成后大致是這個樣子的,就問你多不多!!!沒辦法,誰叫咱是互聯(lián)網(wǎng)后臺開發(fā)者呢!!

3、啟動依賴程序,redis,nacos(類似zookeeper或者spring boot 中的eureka),如果有elasticsearch(搜索引擎類似solr),和sentinel(流量哨兵)也可以啟動一下,沒有就可以不啟動,后續(xù)隨著業(yè)務量的增加再啟動,畢竟小公司嘛
redis服務啟動(windows的),當然生產(chǎn)環(huán)境是linux的
Nacos注冊中心
4、執(zhí)行數(shù)據(jù)庫腳本,導入數(shù)據(jù)庫,如下圖

全部source 一下
- mysql> source file-center.sql
- mysql> source oauth-center.sql
- mysql> source tx-manager.sql
- mysql> source tx-logger.sql
- mysql> source user-center.sql
- mysql> source xxl-job.sql

5、修改配置文件,把里面的所有的配置文件的ip都替換成本機的127.0.0.1,idea可以批量替換,如圖:

6、開始啟動吧!!
A、啟動認證中心zlt-uaa
B、啟動用戶中心zlt-bussiness/user-center
C、啟動網(wǎng)關(guān)zlt-gateway/zuul-gateway
D、啟動前端工程zlt-web/back-web
如下圖:

再看注冊中心服務治理的截圖:

7、訪問測試 localhost:8066:賬戶密碼 admin:admin 至此測試成功。然后運行其他的模塊吧,包含 文件中心、代碼生成器、微服務應用監(jiān)控、統(tǒng)一配置中心、統(tǒng)一日志中心、慢查詢sql、分布式任務調(diào)度、服務限流、降級熔斷控制臺和應用吞吐量監(jiān)控、APM監(jiān)控、分布式事務(tx-lcn)、 搜索中心、首頁(流量統(tǒng)計),有興趣的同學自己探索吧

結(jié)語:
此套開源代碼試用于剛剛創(chuàng)業(yè)的小公司,也適用于上了規(guī)模的互聯(lián)網(wǎng)公司,目前gitee和github綜合star數(shù)量也已經(jīng)超過2k以上,是架構(gòu)師拿來參考搭建本公司微服務架構(gòu)的良好選擇。