Spring Cloud服务发现简单使用例子(2)

上一节Eureka服务已经搭建好了,接下来我们看下如何应用即服务发现,主要分几步,首先需要一个生产者,其次需要一个消费者,都注册到Eureka中,消费者通过服务发现即可调用生产者

1.新建一个生产者项目

idea中新建一个Spring Initializr,引入spring Cloud包信息

<properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>2020.0.3</spring-cloud.version>
    </properties>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
<dependencies>
    <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
</dependencies>

在application.yml文件中指定Eureka服务中心

server:
  port: 8001  #端口
spring:
  jpa: #引入jpa框架
    generate-ddl: false
    show-sql: true
    hibernate:
      ddl-auto: none
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql:///mysql?useUnicode=true&characterEncoding=utf8
    username: ****
    password: ****
  application:
    name: msc-provider-depart #指定当前微服务对外暴露的名称
logging: #配置日志
  pattern:
    console: level-%level %msg%n
  level:
    root: info
    org.hibernate: info
    org.hibernate.type.descriptor.sql.BasicBinder: trace
    org.hibernate.type.descriptor.sql.BasicExtractor: trace
    com.test.zzy: debug
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8003/eureka  # 指定服务中心
  # 指定当前客户端在注册中心的名称
  instance:
    instance-id: msc-provider-8001
info:  #自定义服务信息
  auth: Xiaoming
  app.name: xmmsc
  app.desc: this is a msc of company
  company.name: www.xiaoming.com
  company.addr: Fujian China

2.定义生产者controller信息

自定义controller信息,其中DiscoveryClient是Spring Cloud中一个服务发现客户端接口,通过它可以获取到所有的服务,在实际使用过程中通过在Eureka注册的名称即可获取到对应的服务调用

 3.启动类启用服务发现客户端

4.新建一个消费者项目

同生产者项目一样,application.yml中同样需指定Eureka服务中心如下

server:
  port: 8002
spring:
  application:
    name: msc-consumer-depart
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8003/eureka
  instance:
    instance-id: msc-consumer-8002

4.自定义消费者Controller信息

在controller直接根据生产者暴露在Eureka上的应用名即可找到生产者然后调用生产者的业务处理逻辑,同样启动类中需要加入服务发现客户端注解

5.分别启动Eureka服务和生产者消费者工程

启动后,访问发现eruka可以发现两个应用

用postman工具测试成功

 生产者控制台输出信息

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

意向天开

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值