consul
post http://127.0.0.1:8001/pay/add { "payNo": "payString", "orderNo": "abcasdf", "userId": "1", "amount" : "9.99" } delete http://127.0.0.1:8001/pay/del/4 put http://127.0.0.1:8001/pay/update { "id":"3", "payNo": "payUpdate", "orderNo": "updateNo11111", "userId": "3", "amount" : "9.99" } get http://127.0.0.1:8001/pay/get/3 http://127.0.0.1:8001/pay/get/-3 http://127.0.0.1:8001/pay/error get http://127.0.0.1:8001/pay/all Swagger3 @Tag controller类 @Schema model层的javaBean @Operation 方法 http://127.0.0.1:8001/swagger-ui/index.html --------------------------------------------------------------------------------------- ################### spring cloud consul ######################################### http://localhost/consumer/pay/get/1 http://localhost/consumer/pay/all http://localhost/consumer/pay/add?payNo=12123&orderNo=12123&userId=3&amount=3.33 http://localhost/consumer/pay/del/1 http://localhost/consumer/pay/update?id=6&payNo=update12123&orderNo=update12123&userId=3&amount=3.33 http://localhost/consumer/pay/get/info http://localhost/consumer/discovery ---------------------------------------------------------------------------------------- consul --version consul agent -dev http://localhost:8500 <!--SpringCloud consul discovery --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-consul-discovery</artifactId> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> spring: application: name: cloud-payment-service cloud: consul: host: localhost port: 8500 discovery: service-name: ${spring.application.name} @EnableDiscoveryClient public static final String PaymentSrv_URL = "http://cloud-payment-service";//服务注册中心上的微服务名称 @LoadBalanced //使用@LoadBalanced注解赋予RestTemplate负载均衡的能力 CAP: C:consistency强一致性 A:Availability可用性 P:Partition tolerance分区容错性 CA:单点集群,一致性,可用性 CP:分区一致性,性能不高 AP:分区可用性,降低分区一致性。 Eureka:AP Consul: CP Zookeeper:CP <!--SpringCloud consul config--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-consul-config</artifactId> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency> bootstrap.yml spring: application: name: cloud-payment-service ####Spring Cloud Consul for Service Discovery cloud: consul: host: localhost port: 8500 discovery: service-name: ${spring.application.name} config: profile-separator: '-' # default value is ",",we update '-' format: YAML # watch: # wait-time: 1 # config/cloud-payment-service/data # /cloud-payment-service-dev/data # /cloud-payment-service-prod/data consul界面操作: key/value config/ cloud-payment-service/ cloud-payment-service-dev/ cloud-payment-service-prod/ key:data value: dataconfig: info: configdata version 1.0 http://localhost:8001/pay/get/info @RefreshScope // 动态刷新 以前ribbon,现在的loadBalanced。客户端负载均衡 consul配置持久化 新建mydata文件夹, 新建consul_start.bat文件 内容如下 @echo.服务启动...... @echo off @sc create Consul binpath= "D:\Downloads\consul_1.21.5_windows_amd64\consul.exe agent -server -ui -bind=127.0.0.1 -client=0.0.0.0 -bootstrap-expect 1 -data-dir D:\Downloads\consul_1.21.5_windows_amd64\mydata " @net start Consul @sc config Consul start= Auto @echo.Consul start is OK......success @pause <!--loadbalancer--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-loadbalancer</artifactId> </dependency> loadbalancer默认算法有两种:轮询和随机。 RoundRobinLoadBalancer ----------------------------------------------------------------------------------------
posted on 2025-12-21 21:00 yebinghuai-qq-com 阅读(0) 评论(0) 收藏 举报
浙公网安备 33010602011771号