各種微服務框架的對比


一、微服務的技術棧

微服務條目 落地技術
服務開發 SpringBoot,Spring,SpringMVC
服務配置與管理 Netflix公司的Archaius、阿里的Diamond等
服務注冊與發現 Eureka、Consul、Zookeeper等
服務調用 Rest、RPC、gRPC
服務熔斷器 Hystrix、Envoy等
負載均衡 Ribbon、Nginx等
服務接口調用(客戶端調用服務的簡化工具) Feign等
消息隊列 Kafka、RabbitMQ、ActiveMQ等
服務配置中心管理 SpringCloudConfig、Chef等
服務路由(API網關) Zuul等
服務監控 Zabbix、Nagios、Metrics、Specatator等
全鏈路追蹤 Zipkin、Brave、Dapper等
服務部署 Docker、OpenStack、Kubernetes等
數據流操作開發包 SpringCloud Stream(封裝與Redis,Rabbit,Kafka等發送接收消息)
事件消息總線 SpringCloud Bus

 

 

 二、各種微服務框架的對比

功能點/服務框架 Netflix/SpringCloud Motan gRPC Thrift Dubbo/DubboX
功能定位 完整的微服務架構 RPC框架,但整合了ZK或Consul,實現集群環境的基本服務注冊/發現 RPC框架 RPC框架 服務框架
支持Rest 是,Ribbon支持多種可插拔的序列化選擇
支持RPC
支持多語言 是(Rest形式)
服務注冊/發現 是(Eureka) Eureka服務注冊表,Karyon服務端框架支持服務自注冊和健康檢查 是(zookeeper/consul)
負載均衡 是(服務端zuul+客戶端Ribbon) zuul-服務,動態路由 雲端負載均衡 Eureka(針對中間層服務器) 是(客戶端) 是(客戶端)
配置服務 Netflix Archaius SpringCloud Config Server集中配置 是(zookeeper提供)
服務調用鏈監控 是(zuul) Zuul提供邊緣服務,API網關
高可用/容錯 是(服務端Hystrix+客戶端Ribbon) 是(客戶端) 是(客戶端)
典型應用案例 Netflix Sina Google Facebook  
社區活躍度 一般 一般 2017年7月才重啟
學習難度 中等 一般 一般
文檔豐富度 一般 一般 一般
其他 Spring Cloud Bus為我們應用程序帶來了更多管理端點 支持降級 Netflix內部在開發集成gRPC IDL定義 實踐公司比較

 

 ··

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM