private void clearFeignClientRulesInDegradeManager() {
		// first, clear all manually configured feign clients and methods.
		propertiesBackup.getRules().keySet().stream()
				.filter(key -> !Objects.equals(key, propertiesBackup.getDefaultRule()))
				.forEach(resource -> Optional
						.ofNullable(DegradeRuleManager.getRulesOfResource(resource))
						.ifPresent(Set::clear));

		// Find all feign clients, clear the corresponding rules
		// NOTE: feign client name cannot be the same as the general resource name !!!
		Arrays.stream(applicationContext.getBeanNamesForAnnotation(FeignClient.class))
				// A little trick, FeignClient bean name is full class name.
				// Simple exclusions, such as its subclass.
				.filter(beanName -> beanName.contains(".")).map(beanName -> {
					try {
						return Class.forName(beanName);
					}
					catch (ClassNotFoundException ignore) {
						// definitely not a feign client, just ignore
						return null;
					}
				}).filter(Objects::nonNull).forEach(clazz -> {
					FeignClient anno = clazz.getAnnotation(FeignClient.class);
					if (anno == null || AnnotationUtils.getValue(anno) == null) {
						return;
					}
					String feignClientName = AnnotationUtils.getValue(anno).toString();
					Optional.ofNullable(
							DegradeRuleManager.getRulesOfResource(feignClientName))
							.ifPresent(Set::clear);
				});
	}
properties backup, prevent rules from being updated every time the container is
refreshed.
spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/feign/CircuitBreakerRuleChangeListener.java