Spring Boot+Spring Cloud微服务案例演练(1):服务注册与发现

前言

此demo功能为在服务A项目中生成xml报文,在服务B项目中接收A的报文串并对其进行xml报文解析。其中会涉及到Spinrg Cloud相关技术,在接下来的内容会逐步详解。

最终demo工程如下:

  • 服务注册中心工程:eureka-server

  • 服务提供者A工程(负责生成xml报文):serverClientA

  • 服务调用者B工程(负责解析xml报文):serverClientB

  • 路由网关服务工程:eureka-zuul

  • 日志服务工程:zipkin-service

1.创建Spring Boot项目

在线构建maven项目,springboot最新版本为2.0.4,根据需求可以添加相关依赖。https://start.spring.io/
Spring Boot+Spring Cloud微服务案例演练(1):服务注册与发现_第1张图片

2.搭建服务注册中心工程

2.1 按照步骤1创建springboot项目,添加web依赖

Spring Boot+Spring Cloud微服务案例演练(1):服务注册与发现_第2张图片

2.2 修改pom.xml配置文件,添加Spring Cloud相关依赖


    
        org.springframework.boot
        spring-boot-starter-web
    

    
        org.springframework.boot
        spring-boot-starter-test
        test
    

    
    
        org.springframework.cloud
        spring-cloud-starter-config
    

    
    
        org.springframework.cloud
        spring-cloud-starter-netflix-eureka-server
    




    
        
            org.springframework.cloud
            spring-cloud-dependencies
            Finchley.RELEASE
            pom
            import
        
    

注:springcloud的版本号与springboot的版本号要对应,此处springboot版本为2.0.x,对应的pringcloud版本为Finchley.RELEASE

2.3 启动类中添加@EnableEurekaServer注解

通过此注解可启动服务注册中心提供给其他服务进行对话。

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServerApplication.class, args);
    }
}

2.4 修改application.properties配置文件

在默认设置下,该服务注册中心也会将自己作为客户端来尝试注册它自己,所以需要修改此配置。

#注册中心服务ID
spring.application.name=eureka-server
#端口号,可随意设置,不冲突即可。
server.port=1112
#表示是否将自己注册到Eureka Server,默认为true,由于当前这个应用就是Eureka Server,故而设为false
eureka.client.register-with-eureka=false
#表示是否从Eureka Server获取注册信息,默认为true。因为这是一个单点的Eureka Server,不需要同步其他的Eureka Server节点的数据,故而设为false
eureka.client.fetch-registry=false
#设置与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址
eureka.client.serviceUrl.defaultZone=http://localhost:1112/eureka/

2.5 启动项目

运行项目后,访问此地址:http://localhost:1112/
Spring Boot+Spring Cloud微服务案例演练(1):服务注册与发现_第3张图片

此时还没有服务注册,页面上无服务显示。

3.搭建服务serverClientA

3.1 按照步骤2.1创建Spring Boot项目

3.2 修改pom.xml配置文件,添加Spring Cloud相关依赖(同步骤2.2)

3.3 启动类中添加@EnableEurekaClient注解

通过此注解可激活注册中心的注册服务。

@SpringBootApplication
@EnableEurekaClient  
public class ServerClientAApplication {

    public static void main(String[] args) {
        SpringApplication.run(Demo3Application.class, args);
    }
}

3.4 修改application.properties配置文件

#注册中心服务ID
spring.application.name=client-serverA
#端口号
server.port=2223
eureka.instance.hostname=127.0.0.1
eureka.instance.instance-id=${spring.application.name}:${spring.cloud.client.hostname}:${server.port}
eureka.instance.prefer-ip-address=false
#设置与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址。
eureka.client.serviceUrl.defaultZone=http://localhost:1112/eureka/
#启动服务发现的功能,开启了才能调用其它服务
spring.cloud.config.discovery.enabled=true
#发现的服务的名字--对应注测中心的服务名字
spring.cloud.config.discovery.serviceId=eureka-server

3.5 启动项目

运行项目后,再访问此地址:http://localhost:1112/,此时可以看到服务A已被注册。
Spring Boot+Spring Cloud微服务案例演练(1):服务注册与发现_第4张图片

参考链接:https://blog.csdn.net/guokezhongdeyuzhou/article/details/79653159

你可能感兴趣的:(SpringBoot)