1. 程式人生 > 其它 >【SpringCloud微服務實戰】搭建企業級應用開發框架(一):架構說明

【SpringCloud微服務實戰】搭建企業級應用開發框架(一):架構說明

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支援一下。