SpringBladeSaaS 微服務開發(fā)平臺
SpringBlade 是一個由商業(yè)級項目升級優(yōu)化而來的 SpringCloud 分布式微服務架構、SpringBoot單體式微服務架構并存的綜合型項目,采用Java8 API重構了業(yè)務代碼,完全遵循阿里巴巴編碼規(guī)范。采用Spring Boot 2.4 、Spring Cloud 2020 、Mybatis 等核心技術,同時提供基于React和Vue的兩個前端框架用于快速搭建企業(yè)級的SaaS多租戶微服務平臺。
SpringBlade 微服務開發(fā)平臺:
- 采用前后端分離的模式,前端開源兩個框架:Sword (基于 React、Ant Design)、Saber (基于 Vue、Element-UI)
- 后端采用SpringCloud全家桶,并同時對其基礎組件做了高度的封裝,單獨開源出一個框架:BladeTool
- BladeTool已推送至Maven中央庫,直接引入即可,減少了工程的臃腫,也可更注重于業(yè)務開發(fā)
- 集成Sentinel從流量控制、熔斷降級、系統負載等多個維度保護服務的穩(wěn)定性。
- 注冊中心、配置中心選型Nacos,為工程瘦身的同時加強各模塊之間的聯動。
- 使用Traefik進行反向代理,監(jiān)聽后臺變化自動化應用新的配置文件。
- 極簡封裝了多租戶底層,用更少的代碼換來拓展性更強的SaaS多租戶系統。
- 借鑒OAuth2,實現了多終端認證系統,可控制子系統的token權限互相隔離。
- 借鑒Security,封裝了Secure模塊,采用JWT做Token認證,可拓展集成Redis等細顆粒度控制方案。
- 穩(wěn)定生產了一年,經歷了從Camden -> Hoxton的技術架構,也經歷了從fat jar -> docker -> k8s + jenkins的部署架構
- 項目分包明確,規(guī)范微服務的開發(fā)模式,使包與包之間的分工清晰。
架構圖
工程結構
SpringBlade ├── blade-auth -- 授權服務提供 ├── blade-common -- 常用工具封裝包 ├── blade-gateway -- Spring Cloud 網關 ├── blade-ops -- 運維中心 ├ ├── blade-admin -- spring-cloud后臺管理 ├ ├── blade-develop -- 代碼生成 ├── blade-service -- 業(yè)務模塊 ├ ├── blade-desk -- 工作臺模塊 ├ ├── blade-log -- 日志模塊 ├ ├── blade-system -- 系統模塊 ├ └── blade-user -- 用戶模塊 ├── blade-service-api -- 業(yè)務模塊api封裝 ├ ├── blade-desk-api -- 工作臺api ├ ├── blade-dict-api -- 字典api ├ ├── blade-system-api -- 系統api └── └── blade-user-api -- 用戶api
官網
- 官網地址:https://bladex.vip
- 問答社區(qū):https://sns.bladex.vip
在線演示
- Sword演示地址:https://sword.bladex.vip
- Saber演示地址:https://saber.bladex.vip
項目地址
- 后端Gitee地址:https://gitee.com/smallc/SpringBlade
- 后端Github地址:https://github.com/chillzhuang/SpringBlade
- 后端SpringBoot版:https://gitee.com/smallc/SpringBlade/tree/2.0-boot/
- 前端框架Sword(基于React):https://gitee.com/smallc/Sword
- 前端框架Saber(基于Vue):https://gitee.com/smallc/Saber
- 核心框架項目地址:https://github.com/chillzhuang/blade-tool
技術文檔
界面
BladeX 工作流一覽
Sword 界面一覽
Saber 界面一覽
監(jiān)控界面一覽
評論
圖片
表情
