SpringCloud 服务注册与发现

  • SpringCloud 版本Hoxton.SR1
  • SpringBoot 版本2.2.1.RELEASE
  • 关键字@EnableEurekaServer,@EnableEurekaClient

1. 搭建服务端

  • 在父pom.xml中添加依赖管理
 
    
         
             org.springframework.cloud
             spring-cloud-dependencies
             Hoxton.SR1
             pom
             import
         
     
 
  • 服务端添加依赖
  
      org.springframework.cloud
      spring-cloud-starter-netflix-eureka-server
   
  • application.properties(yaml)配置文件中添加如下配置

spring.application.name=eureka-server
server.port=7070 # 端口自定义
eureka.server.enable-self-preservation = false #不开启自我保护,将不可用的实例剔除
eureka.client.register-with-eureka=false #false表示自己就是服务端,不注册到Eureka中
eureka.client.fetch-registry=false #false表示自己就是服务端,不拉取服务注册表
eureka.client.serviceUrl.defaultZone=http://localhost:${server.port}/eureka/ #覆盖默认的defaultZone

  • 服务端启动类
  import org.springframework.boot.autoconfigure.SpringBootApplication;
  import org.springframework.boot.builder.SpringApplicationBuilder;
  import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
  @SpringBootApplication
  @EnableEurekaServer
  public class EurekaServer {
      public static void main(String[] args) {
          new SpringApplicationBuilder(EurekaServer.class).run(args);
      }
  }
  • 至此,一个简单的Eureka服务端就搭建好了,下面我们启动Spring Boot项目,在浏览器中输入 http://localhost:7070 即可进入Eureka主页面。
    image.png

2. 搭建客户端

  • 客户端添加依赖
  
      org.springframework.cloud
      spring-cloud-starter-netflix-eureka-client
   
  • application.properties(yaml)配置文件中添加如下配置

spring.application.name=eureka-client
server.port=7076 # 端口自定义
eureka.client.register-with-eureka= true #默认为true,注册到Eureka中
management.endpoints.web.exposure.include=* # expose endpoints
eureka.client.fetch-registry= true #默认为true,获取注册列表
eureka.client.serviceUrl.defaultZone=http://localhost:7070/eureka/

  • 客户端启动类
  import org.springframework.boot.autoconfigure.SpringBootApplication;
  import org.springframework.boot.builder.SpringApplicationBuilder;
  import org.springframework.cloud.netflix.eureka.server.EnableEurekaClient;
  @SpringBootApplication
  @EnableEurekaClient
  public class EurekaClient {
      public static void main(String[] args) {
          new SpringApplicationBuilder(EurekaClient.class).run(args);
      }
  }
  • 此时启动客户端,再观察Eureka控制界面,可以看到我们的客户端已经注册到Eureka中了:
  • image.png

3. 总结

  • 到此,Eureka的服务注册与发现就简单的实现了,若有错误的地方还请大家多多指点
  • 下一章节我将会重点分析为什么加上 @EnableEurekaServer和@EnableEurekaClient 就可以实现服务注册与发现了,敬请关注。
  1. ☛ 文章要是勘误或者知识点说的不正确,欢迎评论,毕竟这也是作者通过阅读源码获得的知识,难免会有疏忽!
  2. 要是感觉文章对你有所帮助,不妨点个关注,或者移驾看一下作者的其他文集,也都是干活多多哦,文章也在全力更新中。
  3. 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处!

你可能感兴趣的:(SpringCloud 服务注册与发现)