[Cloud]5-集成Consul

  1. Consul
    1. 安装与启动
  2. 编码
    1. 服务提供者
      1. pom
      2. application.yml
      3. controller
    2. 服务消费者
      1. pom
      2. application.yml
      3. controller
      4. 测试

Consul

安装与启动

下载地址:点击

我用windows测试的,解压有一个exe程序, cmd

启动:consul agent -dev

访问:http://127.0.0.1:8500/ui/dc1/services


编码

服务提供者

新增cloud-provider-payment8006

pom

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>

application.yml

server:
  port: 8006

# 服务别名---consul注册中心名称
spring:
  application:
    name: consul-provider-payment
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        service-name: ${spring.application.name}

controller

@RestController
@Slf4j
public class PaymentController {
    @Value("${server.port}")
    private String serverPort;

    @GetMapping(value = "/payment/consul")
    public String paymentzk() {
        return "springcloud with consul: " + serverPort + "\t" + UUID.randomUUID().toString();
    }
}

服务消费者

新增cloud-consumerconsul-order80

pom

跟提供者服务一致

application.yml

server:
  port: 80

# 服务别名---consul注册中心名称
spring:
  application:
    name: consul-consumer-order
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        service-name: ${spring.application.name}

controller

@RestController
@Slf4j
public class OrderConsulController {
    private static final String INVOKE_URL = "http://consul-provider-payment";

    @Resource
    private RestTemplate restTemplate;

    @GetMapping(value = "/consumer/payment/consul")
    public String paymentInfo(){
        String result = restTemplate.getForObject(INVOKE_URL + "/payment/consul", String.class);
        return result;
    }
}

测试

访问http://127.0.0.1/consumer/payment/consul 可以调用成功!


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 xiaoxin1218@qq.com

文章标题:[Cloud]5-集成Consul

文章字数:265

本文作者:周信

发布时间:2020-03-21, 17:53:36

最后更新:2023-05-03, 10:25:34

原始链接:http://zx21.xyz/2020/03/21/Cloud-5-集成Consul/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

可为我打赏鼓励~