本文源碼:GitHub·點這裏 || GitEE·點這裏git
單體架構在中等偏小的業務中比較常見,場景模式就是單個應用、單個數據庫。一個程序包(例如war格式或者Jar格式)包含全部業務需求功能,這是一種比較傳統的架構風格。github
單體架構的缺陷數據庫
微服務架構是一種架構概念,核心思想在於經過將業務功能和需求分解到各個不一樣的服務中進行管理,實現對業務總體解耦。圍繞業務模式建立應用服務,應用服務可獨立地進行開發、迭代、部署。使項目的架構更加清晰明確。緩存
微服務優劣勢mybatis
微服務架構案例核心內容,基於SpringCloud框架幾個核心組件,Eureka服務註冊與發現組件,Feign聲明式的WebService客戶端組件,Zuul動態路由網關組件。進行多個數據管理,多個服務管理搭建,多箇中間件集成,多業務拆分等模式,搭建SpringCloud微服務框架的綜合應用案例。架構
核心模塊框架
1. 基礎層框架:Spring5+,SpringBoot2+,SpringCloud2+ 2. 持久層框架:mybatis,mybatis-plus 3. 開發組件:Druid,Log4j,FastJson,JodaTime,JavaMail 4. 中間件集成:RocketMQ,Redis,Quart,ElasticSearch 5. 數據存儲:MySQL、Redis、ElasticSearch
1. 用戶端服務接口; 2. 管理端服務接口; 3. 數據入庫服務接口; 4. 數據分析服務接口
1. RocketMQ消息隊列服務 ; 2. ElasticSearch搜索引擎服務 ; 3. Quart定時器服務 ; 4. Redis緩存服務 ; 5. 基礎業務:Token認證服務 ; 6. 基礎業務:MsgBox消息中心服務 ;
1. 路由網關:Zuul組件; 2. 服務註冊與發現:Eureka組件; 3. 服務間調用組件:Feign組件;
MySQL、Redis、ElasticSearch
GitHub·地址 https://github.com/cicadasmile GitEE·地址 https://gitee.com/cicadasmile