/** * Sets the amount of time to wait after calling {@link Server#stop()} for * requests to go away before actually shutting down. * * @param quietPeriodMillis the number of milliseconds to wait for active * requests to go end before shutting down. 0 means the server will * stop right away without waiting. * @param timeoutMillis the number of milliseconds to wait before shutting * down the server regardless of active requests. This should be set to * a time greater than {@code quietPeriodMillis} to ensure the server * shuts down even if there is a stuck request. */ public ServerBuilder gracefulShutdownTimeout(long quietPeriodMillis, long timeoutMillis) { return gracefulShutdownTimeout( Duration.ofMillis(quietPeriodMillis), Duration.ofMillis(timeoutMillis)); }
server.gracefulShutdownTimeout(settings.getGracefulShutdownQuietPeriodMillis(), settings.getGracefulShutdownTimeoutMillis()); logger.debug("Set graceful shutdown timeout: quiet period {} ms, timeout {} ms",
server.gracefulShutdownTimeout(settings.getGracefulShutdownQuietPeriodMillis(), settings.getGracefulShutdownTimeoutMillis()); logger.debug("Set graceful shutdown timeout: quiet period {} ms, timeout {} ms",
@Override protected void configure(ServerBuilder sb) throws Exception { sb.gracefulShutdownTimeout(1000L, 2000L); sb.defaultRequestTimeoutMillis(0); // Disable RequestTimeoutException. sb.service("/sleep", THttpService.of( (AsyncIface) (milliseconds, resultHandler) -> RequestContext.current().eventLoop().schedule( () -> resultHandler.onComplete(milliseconds), milliseconds, MILLISECONDS))); } };
server.gracefulShutdownTimeout( armeriaSettings.getGracefulShutdownQuietPeriodMillis(), armeriaSettings.getGracefulShutdownTimeoutMillis());
server.gracefulShutdownTimeout( armeriaSettings.getGracefulShutdownQuietPeriodMillis(), armeriaSettings.getGracefulShutdownTimeoutMillis());
server.gracefulShutdownTimeout( armeriaSettings.getGracefulShutdownQuietPeriodMillis(), armeriaSettings.getGracefulShutdownTimeoutMillis());
server.gracefulShutdownTimeout( armeriaSettings.getGracefulShutdownQuietPeriodMillis(), armeriaSettings.getGracefulShutdownTimeoutMillis());
cfg.maxFrameLength().ifPresent(sb::defaultMaxRequestLength); cfg.gracefulShutdownTimeout().ifPresent( t -> sb.gracefulShutdownTimeout(t.quietPeriodMillis(), t.timeoutMillis()));
cfg.maxFrameLength().ifPresent(sb::defaultMaxRequestLength); cfg.gracefulShutdownTimeout().ifPresent( t -> sb.gracefulShutdownTimeout(t.quietPeriodMillis(), t.timeoutMillis()));
cfg.maxFrameLength().ifPresent(sb::defaultMaxRequestLength); cfg.gracefulShutdownTimeout().ifPresent( t -> sb.gracefulShutdownTimeout(t.quietPeriodMillis(), t.timeoutMillis()));