1

Мы создаем приложение для пружинной загрузки. В настоящее время контроллер Restor вызывает последовательный вызов нескольких веб-сервисов. Теперь мы должны выполнить эти вызовы параллельно и возвращать ответ в соответствии с ниже условиямногопоточная агрегация с пружинной загрузкой и наоборот

  1. Aggregate - Подождите, пока все параллельные WebServices называют завершить, а затем совокупный ответ и вернуться в тот же.

  2. Нет Агрегация - Возвращаемый ответ, если вызов webservice завершен первым и отменить/отменить/прервать оставшийся вызов.

Я сделал некоторые исследования и обнаружили ExecutorService, но не уверен, если это будет вписываться в обоих типов сценариев, как я новичок в Spring-Boot.

Пожалуйста, дайте мне знать, если есть способ достичь того же.

+1

Вы можете реализовать его самостоятельно, что весело; но есть рамки, которые могут помочь вам в этом, например https://github.com/Netflix/Hystrix или https://github.com/ReactiveX/RxJava – Redlab

+0

Хорошие предложения! –

ответ

0

На мой взгляд, ExecutorService это хорошая идея, и вы должны подать Callable в ExecutoService, так что вы получите обратно Future.

Чтобы справиться с ситуацией № 1, вы должны логически И возвращать значение метода isDone() для всех фьючерсов и для обработки ситуации № 2, вы должны сделать логическое ИЛИ и что-то в этом роде.

Здесь приведены ссылки - Callable & Future.

Я не рекомендую использовать Spring Boot, но исходя из основного ядра Java. Это позволит вам начать работу, тогда вы сможете уточнить подходы и переключить API.

Надеюсь, это поможет!

Смежные вопросы