RPC 是 Remote Procedure Call (远程过程调用) 的缩写,实现的框架隐藏了远程调用的过程,使得远程调用就像是调用本地方法一样,在分布式开发环境下更多的关注业务实现。那么实现RPC的框架要具备哪些基础能力: 服务发现/注册、网络通信、契约接口、负载均衡。高级能力: 流控、系统保护、故障切换、治理平台
Spring Cloud
Spring Cloud 是由 Spring 开源提供的RPC框架,早期版本底层全部由Netflix开源的框架组成,后来由于Netflix不在更新,Spring 对一些组件框架进行了替换。
网关 Zuul、Gateway
注册中心 Eureka、Consul
负载均衡 Ribbon、LoadBalancer
通信 Feign
服务治理 Hystrix
Eureka 注册中心
导入依赖
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.sp