springboot+springcloud+eureka+feign 搭建一个简单的服务注册与调用的平台

2018-09-26 17:04:54 二营长1 阅读数 2673
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41950069/article/details/82855861
一.首先单独新建一个boot项目当做eureka的注册中心
1.在建立项目的时候:勾选上eureka server依赖如图所示

2.在propertities资源文件中加入注册中心的配置:

  server.port=8761
  eureka.instance.hostname=localhost
  #是否把自己注册到eureka服务器
  eureka.client.register-with-eureka=false
  #表示是否从eureka服务器获取注册信息
  eureka.client.fetch-registry=false        

eureka.client.serviceUrl.defaultZone=http:// e u r e k a . i n s t a n c e . h o s t n a m e : {eureka.instance.hostname}: eureka.instance.hostname:{server.port}/eureka/
3.在启动类上加上注解

@EnableEurekaServer
4.启动之后访问localhost:8761 就可以看见注册中心的页面

二.然后我们想要远程调用最起码得有一个服务提供者一个服务调用者,我们先建立服务提供者
在建立项目勾选依赖的时候如果这个项目也想要独自向外提供访问服务就勾选上web mysql mybatis 如图所示:

1.在propertities资源文件中加入暴露自己服务的配置:

      eureka.client.serviceUrl.defaultZone:http://localhost:8761/eureka/
  server.port:8762
  //声明的服务名称
  spring.application.name:service-hi

2.在启动类上加上注解:

@EnableDiscoveryClient
3.然后在controller里随便写一个方法用于远程调用

4.在注册中心和服务提供者项目全部启动之后,注册中心的客户端会看到服务者声明的服务如下图:

这样我们的服务提供者也搭建完成了。

三.最后建服务调用者
建立项目的依赖和服务提供者一样,当部署到这里,你就得明白一个小知识点,服务提供者和调用者他们其实是
互通的,之前dubbo有明确的提供者和调用者,但是在这里一个项目或者模块既可以当服务提供者又可以当服务调用者。

1.在propertities资源文件中加入配置:

    eureka.client.serviceUrl.defaultZone:http://localhost:8761/eureka/
  server.port:8764
  //如果这个调用者也想暴露自己的服务,就加上这个,只是调用的话可以不加
  spring.application.name:client

2.在启动类上加上注解:

     //如果要调用远程服务就加这个注解
  @EnableFeignClients
  //如果要在注册中心注册自己的服务就加这个注解
  @EnableDiscoveryClient

3.这里有个要求就是我们要调用远程的服务就必须写一个接口来调用,接口上注意标记的这两个注解

    @Component
  //远程调用服务的注解
  @FeignClient("service-hi")

4.然后在controller层调用接口的这个服务,因为是用过访问这个项目去调用另一个项目的服务

5.然后这三个项目全启动,进行访问

整个项目搭建成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值