-
启动类注解不同,Ribbon使用的注解是@RibbonClient,而Feign使用注解是@EnableFeignClients。
-
服务的指定位置不同,Ribbon的服务实在注解@RibbonClient中声明的,而Feign是在注解@FeignClient中声明的。
-
调用方式不同,Ribbon需要自己构建HTTP请求来,使用RestTemplate将该请求发送出去。Feign在Ribbon的基础上进行封装,采用
的是接口的方式,无需自己构建HTTP请求,只需将其他服务的方法定义成抽象方法即可。
-
依赖不同,Ribbon的Maven依赖是spring-cloud-starter-netflix-ribbon;Feign的Maven依赖是spring-cloud-starter-openfeign。