


服务注册、服务发现、服务路由



| 嵌入SDK | 反向代理 | 网络代理 | |
|---|---|---|---|
| 多语言 | 每个语言都需要开发SDK | 天然支持多语言 | 天然支持多语言 |
| 应用侵入 | 需要集成SDK | 无 | 无 |
| 可维护性 | 无需额外维护工作 | 维护Proxy服务器集群 | 维护每台机器上的Proxy节点,数量非常多 |
| 高性能 | 天然支持 | 需要通过Proxy集群来实现 | 整体架构是高性能的,但全链路请求性能会下降 |
| 高可用 | 天然支持 | 需要通过Proxy集群来实现 | 整体架构是高可用,单台服务器上的Proxy是单点 |
| 适应场景 | 团队技术栈统一为某个单语言 | 团队技术栈多语言,服务集群规模不大(1000服务器以内) | 团队技术栈多语言,服务集群规模超大(1000服务器以上) |

Apache Dubbo是一款高性能、轻量级的开源Java服务框架,提供了6大核心能力:

Spring Cloud provides tools for (Java) developers to quickly build some of the common patterns in distributed systems:

Apache APISIX is a dynamic, real-time, high-performance API gateway. Based on the Nginx library and etcd
APISIX provides rich traffic management features such as load balancing, dynamic upstream, canary release, circuit breaking,authentication, observability, and more
You can use Apache APISIX to handle traditional north-south traffic, as well as east-west traffic between services. It can also be used as a k8s ingress controller

Istio makes it easy to create a network of deployed services with load balancing, service-to-service authentication, monitoring, and more, with few or no code changes in service code
