Promise.setTimeout vs EventBus send timeout for graceful cancellation of long-running calls
A design is needed to fail service calls that exceed an SLA without leaving work running on the event loop or worker threads. Vert.x Promise API supports promise.setTimeout(long, TimeUnit) which fails the Future with a TimeoutException when the duration elapses. The underlying async task is not cancelled by the timeout. The EventBus request/response pattern