基於SpringCloud(Hoxton.SR1)
+ SpringBoot(2.2.4.RELEASE)
的 SaaS
型微服務腳手架,具有用戶管理、資源權限管理、網關統一鑑權、Xss防跨站***、自動代碼生成、多存儲系統、分佈式事務、分佈式定時任務等多個模塊,支持多業務系統並行開發, 支持多服務並行開發,能夠做爲後端服務的開發腳手架。代碼簡潔,架構清晰,很是適合學習使用。核心技術採用Nacos、Fegin、Ribbon、Zuul、Hystrix、JWT Token、Mybatis、SpringBoot、Seata、Nacos、Sentinel、 RabbitMQ、FastDFS
等主要框架和中間件。前端
但願能努力打造一套從 SaaS
基礎框架 - 分佈式微服務架構 - 持續集成 - 系統監測 的解決方案。本項目旨在實現基礎能力,不涉及具體業務。vue
部署方面, 能夠採用如下4種方式,並會陸續公佈jenkins集合如下3種部署方式的腳本和配置文件:git
IDEA 啓動spring
jar部署docker
docker部署數據庫
JSON序列化:Jackson後端
消息隊列:RabbitMQ緩存
緩存:Redis服務器
緩存框架:J2Cache架構
數據庫: MySQL 5.7.9 (驅動6.0.6)
定時器:採用xxl-jobs項目進行二次改造
前端:vue
持久層框架: Mybatis-plus
代碼生成器:基於Mybatis-plus-generator自定義
API網關:Zuul
服務註冊與發現:Eureka -> Nacos
服務消費:OpenFeign
負載均衡:Ribbon
配置中心:Nacos
服務熔斷:Hystrix
項目構建:Maven 3.3
分佈式事務: seata
分佈式系統的流量防衛兵: Sentinel
監控: spring-boot-admin 2.x
鏈路調用跟蹤: zipkin 2.x
文件服務器:FastDFS 5.0.5/阿里雲OSS/本地存儲
服務註冊&發現與調用
服務鑑權
負載均衡
熔斷機制
監控
鏈路調用監控
SaaS(多租戶)的無感解決方案
防跨站腳本***(XSS)
代碼生成器
定時任務調度器
大文件/斷點/分片續傳
分佈式事務
跨表、跨庫、跨服務的關聯數據自動注入器
源碼