Hystrix實戰

爲什麼要使用Hystrix: 熔斷器Hystrix

1. pom依賴

 <!-- eureka客戶端 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <!-- feign客戶端依賴 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>

2. 配置文件

eureka:
  client:
    serviceUrl:
      defaultZone: http://127.0.0.1:6868/eureka/
  instance:
    prefer-ip-address: true     # 跨域訪問

ribbon:
  ConnectTimeout: 4000 #請求連接的超時時間,默認時間爲1
  ReadTimeout: 4000 #請求處理的超時時間

feign:
  hystrix:
    enabled: true

3. 啓動類

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
public class FriendApplication {

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

4. UserClient

@FeignClient(name ="tensquare-user",fallback = UserClientImpl.class)
public interface UserClient {

    @PutMapping("/user/{userId}/{friendId}/{num}")
    void updateFansAndFollower(@PathVariable ("userId")String userId,
                                @PathVariable("friendId") String friendId,@PathVariable("num") int num);
}

5. UserClientImpl

@Component
public class UserClientImpl implements UserClient {
    @Override
    public void updateFansAndFollower(String userId, String friendId, int num) {
        System.out.println("lalallalalal");
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章