Как совершать вызовы к внешним службам параллельно с реактивной JavaJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как совершать вызовы к внешним службам параллельно с реактивной Java

Сообщение Anonymous »

Я использую Java 17, и мне хотелось бы знать эффективный способ параллельных вызовов с использованием реактивного программирования.
В примере, показанном ниже, у меня есть 3 вызова внешних служб. Каждый из них заполняет объект, который будет отправлен при последнем вызове: serviceFour.callServiceFour(resultMap).

Код: Выделить всё

@Service
public class ExternalServiceImpl {

private final ServiceOne serviceOne;
private final ServiceTwo serviceTwo;
private final ServiceThree serviceThree;
private final ServiceFour serviceFour;

public Mono makeSequentialCalls() {

Map resultMap = new LinkedHashMap();

return serviceOne.callServiceOne()
.doOnNext(response -> resultMap.put("service1", response))
.flatMap(response -> serviceTwo.callServiceTwo())
.doOnNext(response -> resultMap.put("service2", response))
.flatMap(response -> serviceThree.callServiceThree())
.doOnNext(response -> resultMap.put("service3", response))
// Send the response
.flatMap(response -> serviceFour.callServiceFour(resultMap));
}
}
Идея состоит в том, что вызовы служб 1, 2 и 3 выполняются параллельно и, наконец, когда они завершаются, вызывается служба 4 для отправки полного ответа.
Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/787 ... ctive-java
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как совершать исходящие вызовы в AsteriskNow, используя Asterisk AMI с Java
    Anonymous » » в форуме JAVA
    0 Ответы
    42 Просмотры
    Последнее сообщение Anonymous
  • Как добавить метрики к внешним службам, используя Aioprometheus и Fastapi?
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Как совершать вызовы AJAX - Elgg
    Anonymous » » в форуме Php
    0 Ответы
    37 Просмотры
    Последнее сообщение Anonymous
  • Как совершать асинхронные вызовы в Amazon Bedrock
    Anonymous » » в форуме Python
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Как совершать вызовы API-сервера в собственном приложении Capacitor?
    Anonymous » » в форуме Android
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»