If you have a Flowable that has no backpressure implementation (including ones derived from Observable), but you need to support backpressure, you can apply BackpressureStrategy using onBackpressureXXX() operators. They have a few configuration options.
For example, a Flowable.interval() may emit faster than consumers can keep up. Flowable.interval() cannot be slowed down at the source because it is time-driven, but we can use an onBackpressureXXX() operator to proxy between it and the downstream. We will use Flowable.interval() for these examples, but the same approach works for any Flowable that does not have backpressure support.
Sometimes, for instance, Flowable may simply be configured with BackpressureStrategy.MISSING so that these onBackpressureXXX() operators can specify the strategy later.