Spring Cloud Eureka 5 (服务发现与消费-简单的robbin使用)

Posted 韩小鑫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Cloud Eureka 5 (服务发现与消费-简单的robbin使用)相关的知识,希望对你有一定的参考价值。

通过上述介绍,我们已经有了服务注册中心和服务提供者

下面我们来尝试构建一个服务的消费者

它要完成两个功能,发现服务和消费服务,其中发现服务由eureka客户端完成,消费服务由ribbon完成。

ribbon在eureka服务发现的基础上,实现了一套对服务实例的选择策略,从而实现对服务的消费。

在此之前我们需要做一些准备

启动之前的服务注册中心,为hello-service添加一个简单的接口,同时在创建一个hello-service2的项目并为之添加与hello-service相同的配置

在hello-service中新建一个HelloController的类

启动项目测试下接口

 

 安装此配置创建hello-service2启动项目测试接口

这里为了区分将返回值写为hello2同时配置文件中的端口改为8081

至此准备工作完成我们也可以再次看下注册中心的情况

至此两个hello-service已经注册进来了。

我们正式开始构建服务的消费者

新建一个spring boot项目命名为ribbon-consumer

较之之前的hello-service我们加入了spring-cloud-starter-ribbon依赖

为服务主类加入@EnableDiscoveryClient注解

同时在该主类中创建RestTemplate的spring Bean实例并通过@LoadBalanced注解开启客户端的负载均衡

创建ConsumerController类并实现一个简单的/robbin-consumer的接口

 

 application.properties做如下配置

spring.application.name=ribbon-consumer
server.port=9000
eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/,http://peer2:1112/eureka

 

 启动项目

 访问测

 

 

 

 

 从测试结果显示ribbon-consumer分别在hello-service和hello-service2两个实例上做轮询访问

注:

由于各个服务间会相互调用所以服务的提供者和消费者也是相对的概念。 

 

以上是关于Spring Cloud Eureka 5 (服务发现与消费-简单的robbin使用)的主要内容,如果未能解决你的问题,请参考以下文章

spring cloud eureka 参数配置

Spring Cloud:Eureka 客户端注册/注销周期

SPRING CLOUD微服务DEMO-上篇

Spring Cloud Eureka - 集群间数据同步

Spring Cloud:服务治理——Spring Cloud Eureka

基于Spring Cloud的微服务构建学习-3 Spring Cloud Eureka配置详解