- docker安装consul
docker pull consul
docker run -d -p 8500:8500 --name=consul consul:latest agent -server -bootstrap -ui -node=1 -client='0.0.0.0'
- 生产者注册进去
依赖
<!--SpringCloud consul-server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
主启动
@SpringBootApplication
@EnableDiscoveryClient
public class Consul {
public static void main(String[] args) {
SpringApplication.run(Consul.class, args);
}
}
配置
###consul服务端口号
server:
port: 8006
spring:
application:
name: consul-provider-payment02
####consul注册中心地址
cloud:
consul:
host: ip地址
port: 8500
discovery:
#hostname: 127.0.0.1
service-name: ${spring.application.name}
heartbeat:
enabled: true
业务类
@GetMapping(value = "test")
public String test(){
return "ConsulTest";
}
消费者调用
注册进去和上面一样
直接义务类调用
public static final String INVOKE_URL = "http://consul-provider-payment02";
@Resource
private RestTemplate restTemplate;
@GetMapping(value = "/test")
public String paymentInfo()
{
String result = restTemplate.getForObject(INVOKE_URL+"/test",String.class);
return result;
}
调用接口