#mule #mule-component #mulesoft #mule-esb
#mule #mule-компонент #mulesoft #mule-esb
Вопрос:
Я использую mule версии 3.9. Я вызываю REST API в подпотоке. На этот вспомогательный поток ссылаются внутри до успешного компонента в основном потоке. Я использую синхронный режим. Я повторю попытку еще 2 раза, если получу код ответа Http как 503 или 404 из этого API. Мне нужно отслеживать количество повторных попыток и сохранять это значение в БД.
Решения, которые я пробовал:
1.) Я также попытался использовать переменную потока и переменную сеанса и увеличить ее в подпотоке. Но это не работает, потому что переменная сбрасывается в исходное значение для каждой повторной попытки.
2.) Я боюсь использовать реестр для поддержания значения счетчика, поскольку он не потокобезопасен, а чтение и запись в карту реестра могут вызвать проблему.
Пожалуйста, дайте мне знать, есть ли какой-либо обходной путь для поддержания значения количества повторных попыток?
Ответ №1:
Вы можете использовать хранилище объектов, чтобы сохранить количество и сделать ключ для него уникальным для сообщения, например, CorrelationId.
Документация: