springboot搭建微服務架構,采用Feign進行服務之間的遠程調用,配置fallback實現服務降級,配置服務降級配置,主服務監聽調用服務返回的內容,判斷繼續執行還是拋出異常。從而保證邏輯一致性。
1.配置服務調用
@FeignClient(name = "user-service",fallback = UserClientFallback.class)
public interface UserClient {
@PostMapping("/user/authPayStatusUpdateRemote")
CommonResponse authPayStatusUpdate(@RequestBody CreateUserRequest reques);
@PostMapping("/user/userVIPUpdateRemote")
CommonResponse userVIPUpdateRemote(@RequestBody CreateVIPRequest reques);
@PostMapping("/user/userCompanyAuthUpdateRemote")
CommonResponse userCompanyAuthUpdateRemote(@RequestBody CreateVIPRequest reques);
@PostMapping("/user/userCompanyRenewAuthUpdateRemote")
CommonResponse userCompanyRenewAuthUpdateRemote(@RequestBody CreateVIPRequest reques);
@PostMapping("/user/userInfoRemoteQuery")
CommonResponse userInfoRemoteQuery(@RequestBody UserRemoteRequest request);
@PostMapping("/user/queryUserRecommendRemot")
CommonResponse queryUserRecommendRemot(@RequestBody UserRemoteRequest reques);
@PostMapping("/user/addUserwalletRemot")
CommonResponse addUserwalletRemot(@RequestBody UserRemoteRequest reques);
@PostMapping("/user/queryUserUidRemote")
CommonResponse queryUserUidRemote(@RequestBody UserRemoteRequest request);
@Component
static class UserClientFallback implements UserClient {
@Override
public CommonResponse authPayStatusUpdate(CreateUserRequest reques){
return null;
}
@Override
public CommonResponse userVIPUpdateRemote(CreateVIPRequest reques){
return null;
}
@Override
public CommonResponse userCompanyAuthUpdateRemote(CreateVIPRequest reques){
return null;
}
}
}