开发工具与关键技术:Intellij IDEA、Eureka
作者:邓婵
撰写时间:2020年 09月 02日
服务消费者消费应用从注册中心获取服务列表,从而得知每个服务方的信息,知道要去哪里调用服务方,下面来说说服务的消费方怎么调用的。
首先在pom.xml中引入EurekaClient的依赖,相关的依赖如图下所示:
然后创建启动类,初始化RestTemplate,用来真正发起REST请求。@EnableDiscoveryClient注解用来将当前应用加入到服务治理体系中,也就是在启动类开启Eureka客户端,启动类的代码如下:
接着添加application.yml配置文件,需要配置Eureka的地址和服务的端口等信息,注意:这里我添加了spring.application.name属性来指定应用名称,因为将来会作为服务的id使用。相关写法可参考图下:
在消费方新定义一个Controller来调用DiscoveryClicent,注入DiscoveryClicent发现客户端,作用是帮你获取实例传递服务id,我们利用DiscoveryClicent类的方法去拉取服务是根据服务id去拉取的,然后就再根据服务id去查,简单来说就是从DiscoveryClicent里面去根据服务id去拿到实例在从实例里取出ip和端口。
启动消费方的启动类,可以看到,消费方也被注册到Eureka中去了: