Cloud-Admin首個基於Spring Cloud微服務化開發平臺原始碼分享

2020-10-07 21:00:32

Cloud-Admin是國內首個基於Spring Cloud微服務化開發平臺,具有統一授權、認證後臺管理系統,其中包含具備使用者管理、資源許可權管理、閘道器API管理等多個模組,支援多業務系統並行開發,可以作為後端服務的開發腳手架。程式碼簡潔,架構清晰,適合學習和直接專案中使用。核心技術採用Spring Boot2以及Spring Cloud Gateway相關核心元件,前端採用vue-element-admin元件。

模組說明

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

監控

利用Spring Boot Admin 來監控各個獨立Service的執行狀態;利用Hystrix Dashboard來實時檢視介面的執行狀態和呼叫頻率等。

負載均衡

將服務保留的rest進行代理和閘道器控制,除了平常經常使用的node.js、nginx外,Spring Cloud系列的zuul和ribbon,可以幫我們進行正常的閘道器管控和負載均衡。其中擴充套件和借鑑國外專案的擴充套件基於JWT的Zuul限流外掛,方面進行限流。

服務註冊與呼叫

基於Eureka來實現的服務註冊與呼叫,在Spring Cloud中使用Feign, 我們可以做到使用HTTP請求遠端服務時能與呼叫本地方法一樣的編碼體驗,開發者完全感知不到這是遠端方法,更感知不到這是個HTTP請求。

熔斷機制

因為採取了服務的分佈,為了避免服務之間的呼叫「雪崩」,採用了Hystrix的作為熔斷器,避免了服務之間的「雪崩」。

後端工程啟動

專案結構

├─ace-security
│  │  │  ├─ace-modules--------------公共服務模組(基礎系統、搜尋、OSS)
│  │ 
│  ├─ace-auth-----------------服務鑑權中心
│  │ 
│  ├─ace-oauth----------------使用者認證中心
│  │ 
│  ├─ace-gate-----------------閘道器負載中心
│  │ 
│  ├─ace-common---------------通用腳手架
│  │ 
│  ├─ace-center---------------服務註冊中心
│  │   
│  ├─ace-control--------------運維中心(監控、鏈路)
│  │
│  └─ace-sidebar--------------呼叫第三方語言
│

環境須知

  • mysql一個,redis一個,rabbitmq一個
  • jdk1.8
  • IDE外掛一個,lombok外掛,具體百度即可

功能截圖

基本功能

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

Cloud-Admin首個基於Spring Cloud微服務化開發平臺源碼分享

 

License

Apache License Version 2.0

原始碼已經上傳成功,有需要的話按照圖片中的步驟即可獲取