SpringCloud分散式應用微服務系統架構圖:
SpringCloud分散式應用微服務系統元件列表:
- 微服務框架元件:Spring Boot2 + SpringCloud Hoxton.SR8 + SpringCloud Alibaba
- Spring Boot Admin: 管理和監控SpringBoot應用程式的微服務健康狀態
- 資料持久化元件:MySql + Druid + MyBatis + MyBatis-Plus
- Mycat: 中介軟體實現資料庫讀寫分離
- Seata: 分散式事務管理,跨服務的業務操作保持資料一致性
- 高效能的key-value快取資料庫:Redis + RedissonClient + RedisTemplate
- API介面文件: Swagger2 + knife4j
- 介面引數校驗:spring-boot-starter-validation
- Nacos:一個更易於構建雲原生應用的動態服務發現、配置管理和服務管理平臺
- Sentinel:把流量作為切入點,從流量控制、熔斷降級、系統負載保護等多個維度保護服務的穩定性
- OpenFeign: 微服務架構下服務之間的呼叫的解決方案 + Ribbon實現負載均衡/高可用重試機制
- Gateway: 微服務路由轉發 + 聚合knife4j微服務文件 + 【Gateway+OAuth2+JWT微服務統一認證授權】
- Oauth2:SpringSecurity單點登入功能支援多終端認證授權 + RBAC許可權框架
- 驗證碼:整合滑動驗證碼【AJ-Captcha】 + 圖片驗證碼【EasyCaptcha】
- 多租戶: 基於Mybatis-Plus【TenantLineInnerInterceptor】外掛實現多租戶功能
- 資料許可權: 基於Mybatis-Plus【DataPermissionHandler】分頁外掛實現可配置的資料許可權功能
- 物件儲存服務( OSS):MinIO + 阿里雲 + 七牛雲 + 騰訊雲 + 百度雲 + 華為雲
- 工作流:Flowable輕量級業務流程引擎
- XXL-JOB:分散式任務排程平臺,作業排程系統
- Ant-design-vue + ElementUI (基礎)優秀流行的前端開源框架整合
- uni-app: 可釋出到iOS、Android、Web(響應式)、以及各種小程式(微信/支付寶/百度/頭條/QQ/釘釘/淘寶)、快應用等多個平臺 (本框架中主要用於H5、小程式)
- Flutter: 給開發者提供簡單、高效的方式來構建和部署跨平臺、高效能移動應用 (本框架中主要用於移動應用)
- EKL: Elasticsearch + Logstash + Kibana分散式日誌監控平臺
- 程式碼生成器: 基於Mybatis-Plus程式碼生成外掛開發的,便捷可配置的程式碼生成器
- Keepalived + Nginx: 高可用 + 高效能的HTTP和反向代理web伺服器
- DevOps : kubernetes + docker + jenkins 實現持續整合(CI)和持續交付(CD)
- 資料報表:基於Ant-design-vue + Echarts實現的自定義資料視覺化報表
GitEgg-Cloud是一款基於SpringCloud整合搭建的企業級微服務應用開發框架,開源專案地址:
Gitee: https://gitee.com/wmz1930/GitEgg
GitHub: https://github.com/wmz1930/GitEgg
歡迎感興趣的小夥伴Star支援一下。