@Test public void testReadTimeout() throws IOException { try (AsyncHttpClient client = asyncHttpClient(config().setReadTimeout(100))) { Future<Response> responseFuture = client.prepareGet(getTargetUrl()).execute(); Response response = responseFuture.get(2000, TimeUnit.MILLISECONDS); assertNull(response); } catch (InterruptedException e) { fail("Interrupted.", e); } catch (ExecutionException e) { assertTrue(e.getCause() instanceof TimeoutException); checkTimeoutMessage(e.getCause().getMessage(), false); } catch (TimeoutException e) { fail("Timeout.", e); } }
confBuilder.setFollowRedirect(true); confBuilder.setConnectTimeout(connectTimeoutInSeconds * 1000); confBuilder.setReadTimeout(readTimeoutInSeconds * 1000); confBuilder.setUserAgent(String.format("Pulsar-Java-v%s", getPulsarClientVersion())); confBuilder.setKeepAliveStrategy(new DefaultKeepAliveStrategy() {
/** * Create an instance from a given {@link BulletConfig}. Requires {@link DRPCConfig#DRPC_HTTP_CONNECT_TIMEOUT}, * {@link DRPCConfig#DRPC_HTTP_CONNECT_RETRY_LIMIT}, {@link DRPCConfig#DRPC_SERVERS}, {@link DRPCConfig#DRPC_HTTP_PORT}, * and {@link DRPCConfig#DRPC_HTTP_PATH} to be set. To be used in PubSub.Context#QUERY_SUBMISSION mode. * * @param config A non-null config that contains the required settings. */ public DRPCQueryResultPubscriber(BulletConfig config) { Objects.requireNonNull(config); Number connectTimeout = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_CONNECT_TIMEOUT, Number.class); Number retryLimit = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_CONNECT_RETRY_LIMIT, Number.class); List<String> servers = (List<String>) config.getRequiredConfigAs(DRPCConfig.DRPC_SERVERS, List.class); String protocol = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_PROTOCOL, String.class); String port = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_PORT, String.class); String path = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_PATH, String.class); String function = config.getRequiredConfigAs(DRPCConfig.DRPC_FUNCTION, String.class); List<String> endpoints = servers.stream() .map(url -> String.format(URL_TEMPLATE, protocol, url, port, path, function)) .collect(Collectors.toList()); this.urls = new RandomPool<>(endpoints); AsyncHttpClientConfig clientConfig = new DefaultAsyncHttpClientConfig.Builder() .setConnectTimeout(connectTimeout.intValue()) .setMaxRequestRetry(retryLimit.intValue()) .setReadTimeout(NO_TIMEOUT) .setRequestTimeout(NO_TIMEOUT) .build(); // This is thread safe client = new DefaultAsyncHttpClient(clientConfig); responses = new ConcurrentLinkedQueue<>(); }
config.setConnectTimeout(poolConfiguration.getConnectTimeout()); config.setRequestTimeout(poolConfiguration.getRequestTimeout()); config.setReadTimeout(poolConfiguration.getReadTimeout()); config.setHandshakeTimeout(poolConfiguration.getHandshakeTimeout());
.setConnectTimeout(connectTimeout).setReadTimeout(readTimeout) .setPooledConnectionIdleTimeout(pooledConnectionIdleTimeout).setRequestTimeout(requestTimeout) .setFollowRedirect(followRedirect).setMaxRedirects(maxRedirects).setMaxRequestRetry(maxRequestRetry)
confBuilder.setFollowRedirect(true); confBuilder.setConnectTimeout(connectTimeoutInSeconds * 1000); confBuilder.setReadTimeout(readTimeoutInSeconds * 1000); confBuilder.setUserAgent(String.format("Pulsar-Java-v%s", getPulsarClientVersion())); confBuilder.setKeepAliveStrategy(new DefaultKeepAliveStrategy() {
.setConnectTimeout(connectTimeout).setReadTimeout(readTimeout) .setPooledConnectionIdleTimeout(pooledConnectionIdleTimeout).setRequestTimeout(requestTimeout) .setFollowRedirect(followRedirect).setMaxRedirects(maxRedirects).setMaxRequestRetry(maxRequestRetry)
confBuilder.setFollowRedirect(true); confBuilder.setConnectTimeout(connectTimeoutInSeconds * 1000); confBuilder.setReadTimeout(readTimeoutInSeconds * 1000); confBuilder.setUserAgent(String.format("Pulsar-Java-v%s", getPulsarClientVersion())); confBuilder.setKeepAliveStrategy(new DefaultKeepAliveStrategy() {
/** * Create an instance from a given {@link BulletConfig}. Requires {@link DRPCConfig#DRPC_HTTP_CONNECT_TIMEOUT}, * {@link DRPCConfig#DRPC_HTTP_CONNECT_RETRY_LIMIT}, {@link DRPCConfig#DRPC_SERVERS}, {@link DRPCConfig#DRPC_HTTP_PORT}, * and {@link DRPCConfig#DRPC_HTTP_PATH} to be set. To be used in PubSub.Context#QUERY_SUBMISSION mode. * * @param config A non-null config that contains the required settings. */ public DRPCQueryResultPubscriber(BulletConfig config) { Objects.requireNonNull(config); Number connectTimeout = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_CONNECT_TIMEOUT, Number.class); Number retryLimit = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_CONNECT_RETRY_LIMIT, Number.class); List<String> servers = (List<String>) config.getRequiredConfigAs(DRPCConfig.DRPC_SERVERS, List.class); String protocol = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_PROTOCOL, String.class); String port = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_PORT, String.class); String path = config.getRequiredConfigAs(DRPCConfig.DRPC_HTTP_PATH, String.class); String function = config.getRequiredConfigAs(DRPCConfig.DRPC_FUNCTION, String.class); List<String> endpoints = servers.stream() .map(url -> String.format(URL_TEMPLATE, protocol, url, port, path, function)) .collect(Collectors.toList()); this.urls = new RandomPool<>(endpoints); AsyncHttpClientConfig clientConfig = new DefaultAsyncHttpClientConfig.Builder() .setConnectTimeout(connectTimeout.intValue()) .setMaxRequestRetry(retryLimit.intValue()) .setReadTimeout(NO_TIMEOUT) .setRequestTimeout(NO_TIMEOUT) .build(); // This is thread safe client = new DefaultAsyncHttpClient(clientConfig); responses = new ConcurrentLinkedQueue<>(); }
private String httpClientSetup() { final DefaultAsyncHttpClientConfig.Builder config = new DefaultAsyncHttpClientConfig.Builder(); config.setReadTimeout(timeout); config.setConnectTimeout(timeout); config.setFollowRedirect(false);
/** * Initialize the client config. * * @param requestTimeout Timeout to use for the client configuration. * * @return the set up client */ private static AsyncHttpClient initializeWebClient(int requestTimeout) { LOG.debug("Druid request timeout: {}ms", requestTimeout); List<String> cipherSuites = SYSTEM_CONFIG.getListProperty(SSL_ENABLED_CIPHER_KEY, null); String[] enabledCipherSuites = cipherSuites == null || cipherSuites.isEmpty() ? null : cipherSuites.toArray(new String[cipherSuites.size()]); // Build the configuration AsyncHttpClientConfig config = new DefaultAsyncHttpClientConfig.Builder() .setReadTimeout(requestTimeout) .setRequestTimeout(requestTimeout) .setConnectTimeout(requestTimeout) .setConnectionTtl(requestTimeout) .setPooledConnectionIdleTimeout(requestTimeout) .setEnabledCipherSuites(enabledCipherSuites) .setFollowRedirect(true) .build(); return new DefaultAsyncHttpClient(config); }
@Deprecated public static HttpClient create() { /* http://static.javadoc.io/org.asynchttpclient/async-http-client/2.0.0-RC9/org/asynchttpclient/AsyncHttpClientConfig.html */ final DefaultAsyncHttpClientConfig config = new DefaultAsyncHttpClientConfig.Builder() .setEnabledProtocols(new String[]{"TLSv1.1", "TLSv1.2"}) .setReadTimeout(121000) .setRequestTimeout(121000) .build(); return AsyncHttpClientAdapter.of(new DefaultAsyncHttpClient(config)); }
@Bean @Profile("test") public AsyncHttpClient asyncHttpClient() { final AsyncHttpClientConfig httpClientConfig = new DefaultAsyncHttpClientConfig.Builder() .setRequestTimeout(1000) .setReadTimeout(1000) .build(); return new DefaultAsyncHttpClient(httpClientConfig); }
@Deprecated public static HttpClient create() { /* http://static.javadoc.io/org.asynchttpclient/async-http-client/2.0.0-RC9/org/asynchttpclient/AsyncHttpClientConfig.html */ final DefaultAsyncHttpClientConfig config = new DefaultAsyncHttpClientConfig.Builder() .setEnabledProtocols(new String[]{"TLSv1.1", "TLSv1.2"}) .setReadTimeout(121000) .setRequestTimeout(121000) .build(); return AsyncHttpClientAdapter.of(new DefaultAsyncHttpClient(config)); }
@Deprecated public static HttpClient create() { final DefaultAsyncHttpClientConfig config = new DefaultAsyncHttpClientConfig.Builder() .setEnabledProtocols(new String[]{"TLSv1.1", "TLSv1.2"}) .setReadTimeout(121000) .setRequestTimeout(121000) .build(); return AsyncHttpClientAdapter.of(new DefaultAsyncHttpClient(config)); }