zuul+ spring-retry容错机制记录

163 阅读1分钟

导入依赖,pom.xml

		<parent>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-parent</artifactId>
			<version>2.3.9.RELEASE</version>
			<relativePath/> 
		</parent>

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-zuul</artifactId>
		</dependency>
		<dependency>
		    <groupId>org.springframework.cloud</groupId>
		    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
		</dependency>
		<dependency>
		    <groupId>org.springframework.retry</groupId>
		    <artifactId>spring-retry</artifactId>
		</dependency>

配置,application.properties

spring.application.name=zuul-demo
server.port=2103

eureka.client.serviceUrl.defaultZone=http://192.168.1.246:8761/eureka/


zuul.retryable=true
ribbon.connectTimeout=500
ribbon.readTimeout=5000
ribbon.maxAutoRetries=1
ribbon.maxAutoRetriesNextServer=3
ribbon.okToRetryOnAllOperations=true
ribbon.retryableStatusCodes=500,404,502

启动类

@EnableZuulProxy
@SpringBootApplication
public class Application {

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

}

测试

  1. 启动调用服务
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  2. 测试http://localhost:2103/eureka-provider-app/hello1111111
    在这里插入图片描述

两台app都有调用
在这里插入图片描述
在这里插入图片描述