Spring cloud基礎模塊學習

一、微服務架構構成

單體架構(經過應用集羣和數據庫集羣來提升性能,多餘模塊存在浪費)
垂直架構(新的功能模塊經過新項目來實現,數據庫之間存在交叉關聯。存在數據冗餘,和單體架構同樣經過擴展集羣結點,成本高,有性能瓶頸。)
SOA架構(ESB服務總線,基於webservice協議的接口調用。)
微服務架構(採用Restful輕量協議進行服務傳送)
技術棧
 
 

二、相關技術棧簡要理解

  • Eureka服務治理
啓動類添加註解@EnableEurekaServer,@EnableEurekaClient
 
  • Ribbon負載均衡
在啓動類中添加@EnableDiscoveryClient註解,服務發現;
在具體集羣的對象上添加@LoadBalanced註解,如:
<wiz_code_mirror>
 
 
 
 
 
@Bean
@LoadBalanced
public RestTemplate restTemplate(){
return new RestTemplate(new OkHttp3clientHttpRequestFactory());
}
 
 
 
  • Hystrix斷路容錯保護
在啓動類上添加@EnableHystrix(fallbackMethod="errorMethod")註解。
在具體的方法上添加@HystrixCommand註解
如請求超時等,調用相應的服務返回結果。
 
  • Zuul網關
配置文件中添加sso-service配置,
在啓動類上添加@EnableZullProxy註解。
不只用於提供對外的服務的入口,還能夠在微服務之間經過zuul進行調用, 經常使用於請求路由、校驗、過濾等功能。
 
  • Config配置中心
衆多微服務的配置文件能夠直接統一管理,放在git上,直接讀取,修改後不用重啓服務。
 
  • Bus消息總線
微服務之間的異步通訊,如微服務A修改用戶信息,微服務B須要存在緩存中,不能直接調用微服務B,能夠將消息發給消息總線的隊列,消息隊列來通知微服務B。
 
  • Sleuth鏈路跟蹤

微服務之間的串聯調用,能夠跟蹤到具體時哪一步出錯了。
 
  • Turbine集羣監控
相關文章
相關標籤/搜索