關於微服務架構方案選型

關於微服務架構方案選型

推薦優先採用 Spring Cloud Alibaba 方案

概述

目前業界對 Spring Cloud 使用最廣的就是 Spring Cloud Netflix 了。

2018年12月12日 Spring Cloud Netflix項目宣佈已經進入維護模式 官方新聞

什麼是維護模式?

將模塊置於維護模式意味着Spring Cloud團隊將不再向該模塊添加新功能。我們將修復阻止程序錯誤和安全性問題,還將考慮並審查社區的一些小請求。自Greenwich.Release發佈全面上市以來,我們打算繼續爲這些模塊提供至少一年的支持。

這意味着繼續使用它再也沒有新功能福利了;

推薦替代品

服務熔斷 Hystrix Resilience4j
監控 Hystrix Dashboard / Turbine Micrometer + Monitoring System
負載均衡 Ribbon Spring Cloud Loadbalancer
路由網關 Zuul Spring Cloud Gateway
分佈式配置 Archaius Spring Boot external config + Spring Cloud Config

Spring Cloud Netflix

Spring Cloud Netflix功能:

  • 服務發現:可以註冊Eureka實例,並且客戶端可以使用Spring託管的Bean發現實例
  • 服務發現:可以使用聲明性Java配置創建嵌入式Eureka服務器
  • 斷路器:Hystrix客戶端可以使用簡單的註釋驅動的方法裝飾器構建
  • 斷路器:具有聲明性Java配置的嵌入式Hystrix儀表板
  • 聲明式REST客戶端:Feign創建一個用JAX-RS或Spring MVC註釋修飾的接口的動態實現。
  • 客戶端負載均衡器:功能區
  • 外部配置:從Spring Environment到Archaius的橋樑(使用Spring Boot約定啓用Netflix組件的本機配置)
  • 路由器和過濾器:Zuul過濾器的自動重新註冊,以及用於反向代理創建的簡單配置約定

Spring Cloud Alibaba

Github官網

Spring Cloud Alibaba 特徵:

  • 流量控制和服務降級:使用Sentinel進行流量控制,斷路和系統自適應保護。
  • 服務註冊和發現:實例可以在Nacos上註冊,客戶可以使用Spring管理的bean發現實例。支持通過Spring Cloud Netflix的客戶端負載均衡器Ribbon。
  • 分佈式配置:使用Nacos作爲數據存儲
  • 事件驅動:構建與Spring Cloud Stream RocketMQ Binder連接的高度可擴展的事件驅動微服務
  • 消息總線:使用Spring Cloud Bus RocketMQ鏈接分佈式系統的節點
  • 分佈式事務:支持高性能且易於使用的Seata分佈式事務解決方案
  • Dubbo RPC:通過Dubbo RPC擴展Spring Cloud服務到服務調用的通信協議
  • 阿里雲對象存儲:OSS的Spring資源抽象。阿里雲對象存儲服務(OSS)是一種加密,安全,經濟高效且易於使用的對象存儲服務,可讓您在雲中存儲,備份和存檔大量數據

對比

Spring Cloud Netflix Spring Cloud Alibaba Spring Cloud Dubbo + Zookeeper
註冊中心 Eureka Nacos —— Zookeeper
服務熔斷 Hystrix Sentinel —— ——
服務調用 Feign(內置Ribbon) Dubbo Rpc OpenFeign RestTemplate ——
服務路由 Zuul Dubbo PROXY Spring Cloud Gateway ——
分佈式消息 —— RocketMQ RabbitMQ ——
負載均衡 Ribbon Dubbo LB —— ——
分佈式事務 —— Seata —— ——
分佈式配置 Archaius Nacos Spring Cloud Config Zookeeper

Dubbo 與 Spring Cloud 性能比較

avatar

Spring Cloud alibaba 技術架構

avatar

建議

  1. Spring CloudDubbo + Zookeeper屬於自行組裝。

  2. Spring Cloud Netflix 系列技術棧進入維護模式(不再添加新特性)

  3. Spring Cloud Alibaba致力於提供微服務開發的一站式解決方案(全家桶)。並且已經貢獻給Spring

推薦優先採用 Spring Cloud Alibaba 方案

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章