栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springCloud学习笔记(七)——向consul中注册服务,并实现调用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springCloud学习笔记(七)——向consul中注册服务,并实现调用

文章目录

一、下载部署consul

1. docker部署consul2.官网下载 二、SpringCloud向consul中注册服务

1.引入库2.完整pom文件内容3.yml相关配置4.使用@EnableDiscoveryClient注解声明main方法5.RestTemplate配置6.测试方法1.运行截图 总结

一、下载部署consul 1. docker部署consul
    部署命令
    docker run -d --name consul -p 8500:8500 consul
    
    查看是否部署成功,查询consul版本
    docker exec -it consul consul -version  
    
2.官网下载

软件安装包下载

二、SpringCloud向consul中注册服务 1.引入库
     
        
            org.springframework.cloud
            spring-cloud-starter-consul-discovery
        
         
        
            org.springframework.boot
            spring-boot-starter-actuator
        

2.完整pom文件内容


    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.6.5
         
    
    com.example
    consul-servant2020
    0.0.1-SNAPSHOT
    consul-servant2020
    Demo project for Spring Boot
    
        1.8
        2021.0.1
    
    
        
            org.springframework.boot
            spring-boot-starter-web
        

        
        
            org.springframework.cloud
            spring-cloud-starter-consul-discovery
        
         
        
            org.springframework.boot
            spring-boot-starter-actuator
        

        
            org.springframework.boot
            spring-boot-devtools
            runtime
            true
        
        
            org.projectlombok
            lombok
            true
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
    
    
        
            
                org.springframework.cloud
                spring-cloud-dependencies
                ${spring-cloud.version}
                pom
                import
            
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                        
                            org.projectlombok
                            lombok
                        
                    
                
            
        
    



3.yml相关配置
server:
  port: 2021

spring:
  application:
    name: consul-consumer2021
  #consul注册中心地址
  cloud:
    consul:
      host: 192.168.87.128
      port: 8500
      discovery:
        service-name: ${spring.application.name}
        prefer-ip-address: true # 表示注册时使用IP而不是hostname
4.使用@EnableDiscoveryClient注解声明main方法
@SpringBootApplication
@EnableDiscoveryClient
public class ConsulServant2020Application {

    public static void main(String[] args) {
        SpringApplication.run(ConsulServant2020Application.class, args);
    }
}
5.RestTemplate配置
@Configuration
public class ApplicationContextConfig {

    @Bean
    @LoadBalanced
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }
}
6.测试方法
@RestController
@RequestMapping("consulServantController")
public class ConsulServantController {


    @Value("${server.port}")
    String port;

    @Resource
    private RestTemplate restTemplate;
    
    @RequestMapping("sendMessage")
    public String sendMessage(){
        return port + ":" + UUID.randomUUID();
    }

    private static final String INVOKE_URL = "http://consul-consumer2021";



    
    @GetMapping(value = "getMessage")
    public String getMessage() {
        return restTemplate.getForObject(INVOKE_URL + "/consulConsumerController/sendMessage", String.class);
    }

}
1.运行截图
    运行项目查询consul的UI界面
    consul-servant2020服务调用consul-consumer2021中方法
总结
    引入jar包配置consul服务调用方法
    项目地址
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/785421.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号