功能比较
| 项 | Dubbo | SpringCloud | Vert.x Microservices | K8s |
|---|---|---|---|---|
| 服务发现&LB | ZK/Nacos + Client | Eureka + Ribbon | ZK/Service Discovery | Service |
| API网关 | N.A | Zuul | Gravitee API | Ingress |
| 配置管理 | Diamond/Nacos | SpringCloud Config | Config | ConfigMaps/Secrets |
| 容错限流 | Sentinel | Hystrix | Circuit Breaker | HealthCheck/Probe/ServiceMesh |
| 日志监控 | ELK | ELK | 未知 | EFK |
| Metrics监控 | Dubbo Admin/Monitor | Actuator/MicroMeter + Prometheus | 未知 | Heapster + Prometheus |
| 调用链监控 | N.A | SpringCloud Sleuth/Zipkin | 未知 | Jaeger/Zipkin |
| 应用打包 | Jar/War | Uber Jar/War | 未知 | Docker Image/Helm |
| 服务框架 | Dubbo RPC | RESTful | 未知 | 框架无关 |
| 发布和调度 | N.A | N.A | 未知 | Scheduler |
| 自动伸缩和自愈 | N.A | N.A | 未知 | Scheduler/AutoScaler |
| 进程隔离 | N.A | N.A | 未知 | Docker/Pod |
| 环境管理 | N.A | N.A | 未知 | Namespace/Auththorization |
| 资源配额 | N.A | N.A | 未知 | CPU/Mem Limit, Namespace Quotas |
| 流量治理 | ZK + Client | N.A | 未知 | ServiceMesh |
优缺点
| 项 | Dubbo | SpringCloud | Vert.x Microservices | K8s |
|---|---|---|---|---|
| 优点 | 阿里背书 成熟稳定 RPC高性能 流量治理 |
Netfix/Pivotal背书 社区活跃 开发体验好 抽象组件化好 |
高性能 可扩展性高 响应式编程 |
谷歌背书 平台抽象 全面覆盖微服务关注点(发布) 语言栈无关 社区活跃 |
| 缺点 | 技术较老 耦合性高 JVM only 国外社区小 |
JVM only 运行耗资源 |
国内应用较少 | 偏DevOps和运维 重量复杂 技术门槛高 |
