protected SofaResponse getFallback(SofaResponse response, Throwable t) {
        FallbackFactory fallbackFactory = SofaHystrixConfig.loadFallbackFactory((ConsumerConfig) invoker.getConfig());
        if (fallbackFactory == null) {
            return super.getFallback();
        }
        Object fallback = fallbackFactory.create(new FallbackContext(invoker, request, response, t));
        if (fallback == null) {
            return super.getFallback();
        }
        try {
            Object fallbackResult = request.getMethod().invoke(fallback, request.getMethodArgs());
            SofaResponse actualResponse = new SofaResponse();
            actualResponse.setAppResponse(fallbackResult);
            return actualResponse;
        } catch (IllegalAccessException e) {
            throw new SofaRpcRuntimeException(LogCodes.getLog(LogCodes.ERROR_HYSTRIX_FALLBACK_FAIL), e);
        } catch (InvocationTargetException e) {
            throw new SofaRpcRuntimeException(LogCodes.getLog(LogCodes.ERROR_HYSTRIX_FALLBACK_FAIL),
                e.getTargetException());
        }
    }
{@link HystrixCommand} for sync requests

@author <a href=mailto:scienjus@gmail.com>ScienJus</a>
fault/fault-hystrix/src/main/java/com/alipay/sofa/rpc/hystrix/SofaHystrixCommand.java