当前位置:网站首页>ss-5.consul服务端+生产者+消费者
ss-5.consul服务端+生产者+消费者
2022-08-03 05:09:00 【lhorse003】
服务器启动 localhost:8500 http://localhost/consumer/payment/consul – 消费者访问
服务器启动
consul agent -dev – 开发模式启动
cloud-providerconsul-payment8006
│ pom.xml
│
├─src
│ ├─main
│ │ ├─java
│ │ │ └─com
│ │ │ └─cmk
│ │ │ └─springCloud
│ │ │ │ PaymentMain8006.java //jetbrains://idea/navigate/reference?project=zy2020&path=com/cmk/springCloud/PaymentMain8006.java:13:1
│ │ │ │
│ │ │ └─controller
│ │ │ PaymentController.java
│ │ │
│ │ └─resources
│ │ application.yml
│ │
│ └─test
│ └─java
pom.xml
<dependencies>
<!--SpringCloud consul-server-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.cmk.springcoloud</groupId>
<artifactId>cloud-api-commons</artifactId>
<version>${project.version}</version>
</dependency>
<!--SpringBoot整合web组件-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!--日常通用jar包配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
PaymentMain8006.java
@SpringBootApplication
@EnableDiscoveryClient
public class PaymentMain8006 {
public static void main(String[] args) {
SpringApplication.run(PaymentMain8006.class,args);
}
}
PaymentController.java
@RestController
@Slf4j
public class PaymentController {
@Value("${server.port}")
private String serverPort;
@RequestMapping("/payment/consul")
public String paymentConsul(){
return "springcloud with consul:"+serverPort+"\t"+ UUID.randomUUID().toString();
}
}
application.yml
server:
port: 8006
spring:
application:
name: consul-provider-payment
cloud:
consul:
host: localhost
port: 8500
discovery:
service-name: ${
spring.application.name}
cloud-providerconsul-payment8006
│ pom.xml
│
├─src
│ ├─main
│ │ ├─java
│ │ │ └─com
│ │ │ └─cmk
│ │ │ └─springcloud
│ │ │ │ OrderConsulMain80.java //jetbrains://idea/navigate/reference?project=zy2020&path=com/cmk/springcloud/OrderConsulMain80.java:14:1
│ │ │ │
│ │ │ ├─config
│ │ │ │ ApplicationContextConfig.java
│ │ │ │
│ │ │ └─controller
│ │ │ OrderConsulController.java
│ │ │
│ │ └─resources
│ │ application.yml
│ │
│ └─test
│ └─java
pom.xml
<dependencies>
<!--SpringCloud consul-server-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.cmk.springcoloud</groupId>
<artifactId>cloud-api-commons</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--监控-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!--热部署-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
OrderConsulMain80.java
@SpringBootApplication
@EnableDiscoveryClient //该注解用于向使用consul或者zookeeper作为注册中心时注册服务
public class OrderConsulMain80 {
public static void main(String[] args) {
SpringApplication.run(OrderConsulMain80.class,args);
}
}
ApplicationContextConfig.java
@Configuration
public class ApplicationContextConfig {
@Bean
@LoadBalanced
public RestTemplate getRestTemplate(){
return new RestTemplate();
}
}
OrderConsulController.java
@RestController
@Slf4j
public class OrderConsulController {
public static final String INVOKE_URL = "http://consul-provider-payment";
@Resource
private RestTemplate restTemplate;
@GetMapping("/consumer/payment/consul")
public String paymentInfo() {
String result = restTemplate.getForObject(INVOKE_URL + "/payment/consul", String.class);
return result;
}
}
application.yml
###consuL服务端口号
server:
port: 80
spring:
application:
name: cloud-consumer-order
####consuL注册中心她址
cloud:
consul:
host: localhost
port: 8500
discovery:
service-name: ${
spring.application.name}
边栏推荐
- [Fine talk] Using native js to implement todolist
- 接口测试框架实战(二)| 接口请求断言
- 1059 C语言竞赛 (20 分)(C语言)
- 【Harmony OS】【ARK UI】ETS 上下文基本操作
- CAD有生僻字如何打出来、如何提交软件相关问题或建议?
- typescript45-接口之间的兼容性
- Build your own web page on raspberry pie (1)
- Harmony OS ets ArkUI 】 【 】 the development basic page layout and data connection
- Interface test framework combat (1) | Requests and interface request construction
- Flink state
猜你喜欢
MySql数据库
Fluorescent marker peptides FITC/AMC/FAM/Rhodamine TAMRA/Cy3 / Cy5 / Cy7 - Peptide
修饰生物素DIAZO-生物素-PEG3-DBCO|重氮-生物素-三聚乙二醇-二苯基环辛炔
DFS对剪枝的补充
【Harmony OS】【ARK UI】ETS 上下文基本操作
Installation of Apache DolphinScheduler version 2.0.5 distributed cluster
Build your own web page on raspberry pie (1)
Build your own web page on the Raspberry Pi (2)
Ali cloud object storage oss private barrels to generate links
typescript49-交叉类型
随机推荐
High availability, two locations and three centers
Create a tree structure
DFS's complement to pruning
Common lipophilic cell membrane dyes DiO, Dil, DiR, Did spectrograms and experimental procedures
typescript41-class类的私有修饰符
Peptides mediated PEG DSPE of phospholipids, targeted functional materials - PEG - RGD/TAT/NGR/APRPG
接口测试如何准备测试数据
阿里云对象存储oss私有桶生成链接
Odps temporary query can write SQL, turned out to a named?
接口管理工具YApi怎么用?颜值高、易管理、超好用
Response 重写设置返回值
Lambda表达式案例
Apache DolphinScheduler版本2.0.5分布式集群的安装
用户密码加密工具
【 Harmony OS 】 【 ano UI 】 lightweight data storage
接口测试框架实战(三)| JSON 请求与响应断言
js的垃圾回收机制
Tributyl-mercaptophosphane "tBuBrettPhos Pd(allyl)" OTf), 1798782-17-8
Harmony OS Date ano UI 】 【 】 the basic operation
typescript39-class类的可见修饰符