reactor-core/src/main/java/reactor/core/publisher/Flux.java
public static <T> Flux<T> concat(Publisher<? extends Publisher<? extends T>> sources) {
		return concat(sources, Queues.XS_BUFFER_SIZE);
	}
public static <T> Flux<T> concat(Publisher<? extends Publisher<? extends T>> sources) {
		return concat(sources, Queues.XS_BUFFER_SIZE);
	}
Concatenate all sources emitted as an onNext signal from a parent {@link Publisher},
forwarding elements emitted by the sources downstream.
<p>
Concatenation is achieved by sequentially subscribing to the first source then
waiting for it to complete before subscribing to the next, and so on until the
last source completes. Any error interrupts the sequence immediately and is
forwarded downstream.
<p>
<img class="marble" src="doc-files/marbles/concatAsyncSources.svg" alt="">

@reactor.discard This operator discards elements it internally queued for backpressure upon cancellation.

@param sources The {@link Publisher} of {@link Publisher} to concatenate
@param <T> The type of values in both source and output sequences

@return a new {@link Flux} concatenating all inner sources sequences