基於SpringCloud的微服務架構實戰案例項目

QuickStart

基於SpringCloud體系實現,簡單購物流程實現,知足基本功能:註冊、登陸、商品列表展現、商品詳情展現、訂單建立、詳情查看、訂單支付、庫存更新等等。html

每一個業務服務採用獨立的MYSQL數據庫,初期考慮用到以下組件:前端

  1. 服務註冊、發現: eurekagit

  2. 配置管理:spring config , spring securitygithub

  3. 集羣容錯: hystrix(待實現)redis

  4. API網關: zuul(待實現)spring

  5. 服務負載:feign+ribbon數據庫

  6. api文檔輸出:swagger2後端

  7. 代碼簡化:lombokapi

  8. 消息隊列:rabbitmq瀏覽器

  9. 分佈式鎖: redis (待實現)

  10. 鏈路跟蹤:spring cloud sletuh ->zipkin

  11. 安全認證:oauth2/JWT(待實現)

  12. 服務監控:spring-boot-admin

各模塊介紹

模塊名稱 端口 簡介
admin-server 9002 服務監控中心,監控全部服務模塊
conf-server 9004 分佈式配置中心,結合spring-security/rabbitmq同時使用
eureka-server 9003 服務註冊中心,提供服務註冊、發現功能
sleuth-server 9001 SpringCloud實現的一種分佈式追蹤解決方案,兼容Zipkin
zuul-server 9005 API網關模塊
account-service 8080 用戶服務,提供註冊、登陸、地址等服務
product-service 8081 商品服務,提供商品列表、詳情、庫存更新等服務
payment-service 8082 支付服務,支付記錄
order-service 8083 訂單服務,提供訂單建立、詳情、狀態變動
msg-service 8084 消息處理服務
front-app 8088 前端服務,結合swagger2提供API管理

快速上手

  • 一、先啓動admin-server,eureka-server,conf-server三個基礎服務

  • 二、再依次啓動payment/order/product/account基礎業務服務

  • 三、最後啓動front-app服務,打開瀏覽器,輸入http://localhost:8088/swagger... ,根據流程API依次可以使用功能

  • 四、後續有時間再提供頁面,基於VUE2+BOOTSTRAP,將流程串起來

Release Version

v2.1

Release Date : 2017-08-29

一、引入swagger2,完成API接口文檔管理完成總體業務數據流程流轉
二、經過API接口完成總體業務數據
三、基於Spring-cloud-config引入配置中心,結合security增強安全配置,同時引入bus-amqp(rabbitmq)高效更新配置內容[配置中心數據結合sc-cloud-repo工程使用]
四、引入feign,知足客戶端調用服務端的服務
五、引入ribbon,能夠知足客戶端的負載均衡調用後端服務

v1.0

Release Date : 2017-08-17

一、完成基本服務及業務子模塊服務的搭建 ,業務子模塊可正常運行
二、完成SpringBootAdmin業務模塊的運行監控,及Eureka服務運行,知足各業務基礎服務的註冊、發現功能
三、可經過Front-app端,藉助Feign組件發起login/signup等功能的 簡單測試運行。
下一版本,將基於此版本之上,繼續完善完整的購物實現,包括簡單的頁面、api管理/調用等等。

關注更多內容

源碼地址 : https://github.com/backkoms/s...

相關文章
相關標籤/搜索