static CloseableHttpClient defaultHttpClient() { PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager(); connectionManager.setDefaultMaxPerRoute(DEFAULT_MAX_CONNECTIONS); connectionManager.setMaxTotal(DEFAULT_MAX_CONNECTIONS); RequestConfig.Builder requestConfigBuilder = RequestConfig.custom(); requestConfigBuilder.setConnectTimeout(((int) TimeUnit.SECONDS.toMillis(5))); requestConfigBuilder.setSocketTimeout((int) TimeUnit.SECONDS.toMillis(10)); CacheConfig cacheConfig = CacheConfig.custom() .setMaxCacheEntries(128) .setMaxObjectSize(2048) // keys (.pem) are small .setHeuristicCachingEnabled(false) .setSharedCache(false) .setAsynchronousWorkersMax(2) .build(); return CachingHttpClients.custom() .setCacheConfig(cacheConfig) .setDefaultRequestConfig(requestConfigBuilder.build()) .setConnectionManager(connectionManager) .useSystemProperties() .setRedirectStrategy(DefaultRedirectStrategy.INSTANCE) .build(); } }
.setMaxCacheEntries(cacheMaxEntries != null ? cacheMaxEntries : DEFAULT_CACHE_MAX_ENTRIES) .setMaxObjectSize(cacheMaxObjectSize != null ? cacheMaxObjectSize : DEFAULT_CACHE_MAX_OBJECT_SIZE) .setSharedCache(false) .build();
/******************************************************************************************************************* * * * ******************************************************************************************************************/ @PostConstruct /* VisibleForTesting */ void initialize() { connectionManager = new PoolingHttpClientConnectionManager(); connectionManager.setMaxTotal(200); connectionManager.setDefaultMaxPerRoute(20); cacheConfig = CacheConfig.custom() .setAllow303Caching(true) .setMaxCacheEntries(Integer.MAX_VALUE) .setMaxObjectSize(Integer.MAX_VALUE) .setSharedCache(false) .setHeuristicCachingEnabled(true) .build(); httpClient = CachingHttpClients.custom() .setHttpCacheStorage(cacheStorage) .setCacheConfig(cacheConfig) .setRedirectStrategy(dontFollowRedirect) .setUserAgent("blueMarine (fabrizio.giudici@tidalwave.it)") .setDefaultHeaders(Arrays.asList(new BasicHeader("Accept", "application/n3"))) .setConnectionManager(connectionManager) .addInterceptorFirst(killCacheHeaders) // FIXME: only if explicitly configured .build(); }
.setSharedCache(false) .setNeverCacheHTTP10ResponsesWithQueryString(false) .setMaxObjectSize(options.getMaxCacheObjectSize())
.setSharedCache(false) .setMaxCacheEntries(SettingsManager.settings().cacheEntries()) .setMaxObjectSize(SettingsManager.settings().cacheEntrySize())
public static CacheConfig createCacheConfig(Properties properties) { // Heuristic caching boolean heuristicCachingEnabled = Parameters.HEURISTIC_CACHING_ENABLED.getValue(properties); float heuristicCoefficient = Parameters.HEURISTIC_COEFFICIENT.getValue(properties); long heuristicDefaultLifetimeSecs = Parameters.HEURISTIC_DEFAULT_LIFETIME_SECS.getValue(properties); int maxCacheEntries = Parameters.MAX_CACHE_ENTRIES.getValue(properties); long maxObjectSize = Parameters.MAX_OBJECT_SIZE.getValue(properties); // Asynchronous revalidation int minAsynchronousWorkers = Parameters.MIN_ASYNCHRONOUS_WORKERS.getValue(properties); int maxAsynchronousWorkers = Parameters.MAX_ASYNCHRONOUS_WORKERS.getValue(properties); int asynchronousWorkerIdleLifetimeSecs = Parameters.ASYNCHRONOUS_WORKER_IDLE_LIFETIME_SECS.getValue(properties); int maxUpdateRetries = Parameters.MAX_UPDATE_RETRIES.getValue(properties); int revalidationQueueSize = Parameters.REVALIDATION_QUEUE_SIZE.getValue(properties); CacheConfig.Builder builder = CacheConfig.custom(); builder.setHeuristicCachingEnabled(heuristicCachingEnabled); builder.setHeuristicCoefficient(heuristicCoefficient); builder.setHeuristicDefaultLifetime(heuristicDefaultLifetimeSecs); builder.setMaxCacheEntries(maxCacheEntries); long usedMaxObjectSize = Long.MAX_VALUE; if (maxObjectSize > 0) { usedMaxObjectSize = maxObjectSize; } builder.setMaxObjectSize(usedMaxObjectSize); builder.setAsynchronousWorkersCore(minAsynchronousWorkers); builder.setAsynchronousWorkersMax(maxAsynchronousWorkers); builder.setAsynchronousWorkerIdleLifetimeSecs(asynchronousWorkerIdleLifetimeSecs); builder.setMaxUpdateRetries(maxUpdateRetries).setRevalidationQueueSize(revalidationQueueSize); builder.setSharedCache(true); return builder.build(); }
public static Builder copy(final CacheConfig config) { Args.notNull(config, "Cache config"); return new Builder() .setMaxObjectSize(config.getMaxObjectSize()) .setMaxCacheEntries(config.getMaxCacheEntries()) .setMaxUpdateRetries(config.getMaxUpdateRetries()) .setHeuristicCachingEnabled(config.isHeuristicCachingEnabled()) .setHeuristicCoefficient(config.getHeuristicCoefficient()) .setHeuristicDefaultLifetime(config.getHeuristicDefaultLifetime()) .setSharedCache(config.isSharedCache()) .setAsynchronousWorkersMax(config.getAsynchronousWorkersMax()) .setAsynchronousWorkersCore(config.getAsynchronousWorkersCore()) .setAsynchronousWorkerIdleLifetimeSecs(config.getAsynchronousWorkerIdleLifetimeSecs()) .setRevalidationQueueSize(config.getRevalidationQueueSize()) .setNeverCacheHTTP10ResponsesWithQueryString(config.isNeverCacheHTTP10ResponsesWithQuery()); }
public static CacheConfig createDefaultCacheConfig() { return CacheConfig.custom().setMaxCacheEntries(500).setMaxObjectSize(1024 * 256) .setSharedCache(false).setHeuristicCachingEnabled(true) .setHeuristicDefaultLifetime(86400).build(); }
public static CacheConfig createDefaultCacheConfig() { return CacheConfig.custom().setMaxCacheEntries(500).setMaxObjectSize(1024 * 256) .setSharedCache(false).setHeuristicCachingEnabled(true) .setHeuristicDefaultLifetime(86400).build(); }