private static Cache<String, CacheEntry> buildCache(String cacheSpec) {
        final Caffeine<Object, Object> b = Caffeine.from(cacheSpec);
        b.removalListener((RemovalListener<String, CacheEntry>) (key, value, cause) -> {
            if (value != null) {
                value.clear();
            }
        });
        return b.build();
    }
Creates and manages refreshing {@link AddressResolver}s and the DNS cache.
core/src/main/java/com/linecorp/armeria/client/RefreshingAddressResolverGroup.java