SpringCloud---初識

一、概述架構

    1.1  Spring Cloud是一個基於SpringBoot實現的微服務架構開發工具;app

         Spring Cloud爲微服務架構中涉及的配置管理、服務治理、斷路器、智能路由、微代理、控制總線、全局鎖、決策競選、分佈式會話、集羣狀態管理等操做提供了一種簡單的開發方式;負載均衡

    1.2  Spring Cloud包含了多個子項目:分佈式

          Spring Cloud Config:微服務

             

          Spring Cloud Netflix:工具

             

             

          Spring Cloud Bus:開發工具

              

          Spring Cloud Cluster:ui

              

          

 

二、快速入門spa

    1.1  配置服務代理

          SpringCloud提供了Config Server,提供在分佈式系統中外部配置的功能;

          SpringCloud提供了@EnableConfigServer啓用配置服務

    1.2  服務發現

          SpringCloud經過Netflix OSS的Eureka來實現服務發現

          服務發現的目的:讓每一個服務之間相互通訊;

          Eureka Server微服務註冊中心

          SpringCloud使用@EnableEurekaServer做爲Eureka服務端

                 @EnableEurekaClient做爲Eureka客戶端

    1.3  路由網關

          路由網關的目的:讓全部的微服務對外只有一個接口,只須要訪問一個網關地址,由網關將請求代理到不一樣的服務中;

          SpringCloud經過Zuul實現路由網關,支持自動路由映射到在Eureka Server上註冊的服務

          SpringCloud經過@EnableZuulProxy啓用路由代理

    1.4  負載均衡

          SpringCloud提供了Ribbon、Feign做爲客戶端的負載均衡

          使用Ribbon時,直接注入一個RestTemplate對象(已作好負載均衡的配置)便可

          使用Feign時,只需定義個註解,有@FeignClient註解的接口,而後使用@RequestMapping在方法上映射遠程的REST服務,此方法也是作好負載均衡的

    1.5  斷路器

          斷路器:爲了解決當某個方法調用失敗時,調用後備方法來替代失敗的方法,以達到容錯、阻止級聯錯誤等功能

          SpringCloud使用@EnableCircuitBreaker啓用斷路器支持

                使用@HystrixCommand的fallbackMethod指定後備方法

          SpringCloud提供了@EnableHystrixDashboard能夠在控制檯監控斷路器的運行狀況

相關文章
相關標籤/搜索