今天給大家推薦一個(gè)牛逼的接私活項(xiàng)目诈唬,SpringCloud微服務(wù)架構(gòu)項(xiàng)目!
一個(gè)由商業(yè)級(jí)項(xiàng)目升級(jí)優(yōu)化而來的微服務(wù)架構(gòu)缩麸,采用SpringBoot 2.7 铸磅、SpringCloud 等核心技術(shù)構(gòu)建,提供基于React和Vue的兩個(gè)前端框架用于快速搭建企業(yè)級(jí)的SaaS多租戶微服務(wù)平臺(tái)。
架構(gòu)圖
項(xiàng)目介紹
- 采用前后端分離的模式阅仔,前端開源兩個(gè)框架:Sword (基于 React吹散、Ant Design)、Saber(基于 Vue八酒、Element-UI)
- 后端采用SpringCloud全家桶空民,并同時(shí)對(duì)其基礎(chǔ)組件做了高度的封裝,單獨(dú)開源出一個(gè)框架:BladeTool
- BladeTool已推送至Maven中央庫(kù)羞迷,直接引入即可界轩,減少了工程的臃腫,也可更注重于業(yè)務(wù)開發(fā)
- 集成Sentinel從流量控制衔瓮、熔斷降級(jí)浊猾、系統(tǒng)負(fù)載等多個(gè)維度保護(hù)服務(wù)的穩(wěn)定性。
- 注冊(cè)中心报辱、配置中心選型Nacos与殃,為工程瘦身的同時(shí)加強(qiáng)各模塊之間的聯(lián)動(dòng)。
- 使用Traefik進(jìn)行反向代理碍现,監(jiān)聽后臺(tái)變化自動(dòng)化應(yīng)用新的配置文件幅疼。
- 極簡(jiǎn)封裝了多租戶底層,用更少的代碼換來拓展性更強(qiáng)的SaaS多租戶系統(tǒng)昼接。
- 借鑒OAuth2爽篷,實(shí)現(xiàn)了多終端認(rèn)證系統(tǒng),可控制子系統(tǒng)的token權(quán)限互相隔離慢睡。
- 借鑒Security逐工,封裝了Secure模塊,采用JWT做Token認(rèn)證漂辐,可拓展集成Redis等細(xì)顆粒度控制方案泪喊。
- 穩(wěn)定生產(chǎn)了三年,經(jīng)歷了從 Camden -> Hoxton -> 2021 的技術(shù)架構(gòu)髓涯,也經(jīng)歷了從fat jar -> docker -> k8s + jenkins的部署架構(gòu)袒啼。
- 項(xiàng)目分包明確,規(guī)范微服務(wù)的開發(fā)模式纬纪,使包與包之間的分工清晰蚓再。
- 推薦:那幾本霸占我休息時(shí)間的PDF!
工程結(jié)構(gòu)
SpringBlade
├── blade-auth -- 授權(quán)服務(wù)提供
├── blade-common -- 常用工具封裝包
├── blade-gateway -- Spring Cloud 網(wǎng)關(guān)
├── blade-ops -- 運(yùn)維中心
├ ├── blade-admin -- spring-cloud后臺(tái)管理
├ ├── blade-develop -- 代碼生成
├ ├── blade-resource -- 資源管理
├ ├── blade-seata-order -- seata分布式事務(wù)demo
├ ├── blade-seata-storage -- seata分布式事務(wù)demo
├── blade-service -- 業(yè)務(wù)模塊
├ ├── blade-desk -- 工作臺(tái)模塊
├ ├── blade-log -- 日志模塊
├ ├── blade-system -- 系統(tǒng)模塊
├ └── blade-user -- 用戶模塊
├── blade-service-api -- 業(yè)務(wù)模塊api封裝
├ ├── blade-desk-api -- 工作臺(tái)api
├ ├── blade-dict-api -- 字典api
├ ├── blade-system-api -- 系統(tǒng)api
└── └── blade-user-api -- 用戶api
用戶權(quán)益
允許免費(fèi)用于學(xué)習(xí)包各、畢設(shè)摘仅、公司項(xiàng)目、私活等问畅,但請(qǐng)保留源碼作者信息娃属。