@Override public void start() throws Exception { Router router = Router.router(vertx); router.route().handler(BodyHandler.create()); router.route().handler(req -> req.response().putHeader("content-type", "text/html") .end("<html><body><h1>Hello from vert.x!</h1></body></html>")); HttpServer server = vertx.createHttpServer(); server.requestStream() .toFlowable() .map(HttpServerRequest::pause) .onBackpressureDrop(req -> req.response().setStatusCode(503).end()) .observeOn(RxHelper.scheduler(vertx.getDelegate())) .subscribe(req -> { req.resume(); router.accept(req); }); server.rxListen(PORT).subscribe(res -> generateRequests()); }
.observeOn(RxHelper.scheduler(vertx.getDelegate())) .subscribe(req -> { req.resume(); routeSafe(req, router); }, error -> LOGGER.error("Exception while processing!", error));
.observeOn(RxHelper.scheduler(vertx.getDelegate())) .subscribe(req -> { req.resume(); routeSafe(req, router); }, error -> LOGGER.error("Exception while processing!", error));