Sobes.tech
Junior — Middle

Explique a conceção e os princípios básicos do uso do Project Reactor em Java.

sobes.tech IA

Resposta da IA

O Project Reactor é uma biblioteca para programação reativa em Java, implementando a especificação Reactive Streams. Permite criar aplicações assíncronas e não bloqueantes que utilizam recursos de forma eficiente.

Princípios básicos:

  • Flux e Mono — tipos principais: Flux representa um fluxo de 0..N elementos, Mono — 0..1 elemento.
  • Retrocesso (Backpressure) — controle da velocidade de processamento de dados para não sobrecarregar o consumidor.
  • Operadores — métodos para transformar, filtrar e combinar fluxos.
  • Assinatura — o fluxo reativo só começa a trabalhar após a assinatura.

Exemplo de uso:

Flux.just(1, 2, 3, 4)
    .filter(i -> i % 2 == 0)
    .map(i -> i * 2)
    .subscribe(System.out::println); // Vai imprimir 4 e 8

Assim, o Project Reactor ajuda a escrever aplicações escaláveis e responsivas com uma manipulação conveniente de fluxos de dados assíncronos.