Hystrix Fallback Disable
У меня есть метод, который имеет аннотацию Hystrix следующим образом:
например:
@HystrixCommand(fallbackMethod="testMessage")
public boolean receiveMessage(String message, String destination)
{
Code goes here
}
,
Таким образом, у меня есть флаг, который при значении true должен включать резервный режим, в противном случае при отключении мне нужно отключить резервный вариант. Есть какой-либо способ сделать это. Обратите внимание, что мы используем аннотацию, поэтому есть способ включить и отключить аннотацию, означает включить или отключить резервный режим на основе флага.
1 ответ
Несколько вариантов, которые я могу придумать.
- Сохраняйте статическую логическую переменную. И измените это в зависимости от ваших требований. И в вашем резервном методе вы можете проверить эту переменную и продолжить работу, только если она не установлена. (Не так чисто)
- (Лучшее решение) Есть свойство Hystrix
hystrix.command.default.fallback.enabled
что позволит вам отключить запасной вариант, как упомянуто здесь
Вы можете установить это во время выполнения ба получения ConfigurationManager
(Com.netflix.config.ConfigurationManager). Что-то вроде этого
com.netflix.config.ConfigurationManager.getConfigInstance().setProperty("hystrix.command.default.fallback.enabled", false)// If you want to turn it off