Я профилирую свое приложение-реактор, используя BlockHound
. У меня на ExchangeFunction
есть фильтр:
@Override
public Mono<ClientResponse> filter(ClientRequest request, ExchangeFunction next) {
final ClientRequest.Builder builder = ClientRequest.from(request);
return Mono.defer(() -> next.exchange(builder.build())) //detects blocking call
.transform(reactiveUtil::contextualize)
.publishOn(Schedulers.parallel());
}
BlockHound
обнаруживает блокирующий вызов на next.exchange()
. Теперь, когда я использую WebClient
с Netty
, почему этот вызов должен быть неблокирующим? Подписка на эту ветку elastic
не помогает.