Spring Cloud使用樣例

hackyo發表於2018-09-05

Spring Cloud Demo

專案地址:https://github.com/hackyoMa/spring-cloud-demo

元件

基於Spring Boot 2.0.4、Spring Cloud Finchley.SR1的Spring Cloud Demo
其中含有下列元件的樣例:

  • Eureka(服務註冊與發現)
  • Feign(服務消費者)
  • Zuul(路由閘道器)
  • Turbine(斷路器聚合監控)
  • Zipkin(服務鏈路追蹤)
  • Spring Boot Admin(服務監控中心)
  • Spring Cloud Config(服務配置中心)

元件架構

Spring Cloud 元件架構

  1. 外部或內部非Spring Cloud專案統一通過API閘道器(Zuul)來訪問內部服務
  2. 閘道器接收到請求後,從註冊中心(Eureka)獲取可用服務
  3. 由Ribbon(Feign整合)進行負載均衡後,分發到具體例項
  4. 微服務之間通過Feign進行通訊
  5. Hystrix(Feign整合)負責處理服務超時熔斷
  6. Spring Cloud Config對服務配置進行統一管理
  7. Turbin監控服務的熔斷資訊
  8. Zipkin監控服務間的呼叫資訊
  9. Spring Boot Admin監控服務的執行狀態和屬性等相關資訊

相關地址

    1. 註冊中心地址:http://localhost:8881/
    2. 直接呼叫服務地址:http://localhost:8882/hi?name=6666
    3. 通過Feign呼叫地址:http://localhost:8884/hi?name=6666
    4. Feign的hystrix資訊:http://localhost:8884/hystrix
    5. 通過Zuul呼叫地址(配置鑑權):http://localhost:8885/feign/hi?name=6666&token=1234
    6. Turbine資訊地址:http://localhost:8886/turbine.stream
    7. Zipkin資訊地址:http://localhost:9411/zipkin/
    8. Spring Cloud Config測試地址:http://localhost:8888/eureka-client/dev
    9. 動態重新整理配置(需安裝Rabbit MQ,傳送POST請求):http://localhost:8882/actuator/bus-refresh
    10. Spring Boot Admin服務地址:http://localhost:8887

相關文章