功能点/服务框架 | Netflix/SpringCloud | Motan | gRPC | Thrift | Dubbo/DubboX |
功能定位 | 完整的微服务框架 | RPC框架,但整合了ZK或Consul,实现集群环境的基本的服务注册/发现 | RPC框架 | RPC框架 | 服务框架 |
支持REST | 是 Eibbon支持多种可插拔的序列化选择 | 否 | 否 | 否 | 否 |
支持RPC | 否 | 是 | 是 | 是 | 是 |
支持多语言 | 是 | 否 | 是 | 是 | 否 |
服务注册/发现 | 是,Eureka服务注册表,karyon服务端框架支持服务自注册和健康检查 | 是(zookerper/consul) | 否 | 否 | 是 |
负载均衡 |
是(服务端zuul+客户端Ribbon)zuul-服务,动态路由 云端负载均衡 Eureka(针对中间层服务器) |
是 | 否 | 否 | 是(客户端) |
配置服务 | Netflix Archaius Spring Cloud Config Server 集中配置 | 是(zookeeper提供) | 否 | 否 | 否 |
服务调用监控 | 是(zuul) zuul提供边缘服务,API网关 | 否 | 否 | 否 | 否 |
高可用/容错 | 是(服务端Hystrix+客户端Ribbon) | 是(客户端) | 否 | 否 | 是(客户端) |
典型应用案例 | Netflix | Sina | |||
社区活跃程度 | 高 | 一般 | 高 | 一般 | 已经不维护了 |
学习难度 | 中等 | 低 | 高 | 高 | 低 |
文档丰富度 | 高 | 一般 | 一般 | 一般 | 高 |
其他 | Spring Cloud Bus为我们的应用程序带来了更多管理端点 | 支持降级 | Netflix内部在开发集成gRPC | IDL定义 | 实践的公司比较多 |