public class RoundRobinDnsAddressResolverGroup extends DnsAddressResolverGroup
AddressResolverGroup of DnsNameResolvers that supports random selection of destination addresses if
multiple are provided by the nameserver. This is ideal for use in applications that use a pool of connections, for
which connecting to a single resolved address would be inefficient.| Constructor and Description |
|---|
RoundRobinDnsAddressResolverGroup(io.netty.channel.ChannelFactory<? extends io.netty.channel.socket.DatagramChannel> channelFactory,
DnsServerAddressStreamProvider nameServerProvider) |
RoundRobinDnsAddressResolverGroup(Class<? extends io.netty.channel.socket.DatagramChannel> channelType,
DnsServerAddressStreamProvider nameServerProvider) |
RoundRobinDnsAddressResolverGroup(DnsNameResolverBuilder dnsResolverBuilder) |
| Modifier and Type | Method and Description |
|---|---|
protected io.netty.resolver.AddressResolver<InetSocketAddress> |
newAddressResolver(io.netty.channel.EventLoop eventLoop,
io.netty.resolver.NameResolver<InetAddress> resolver)
We need to override this method, not
DnsAddressResolverGroup.newNameResolver(EventLoop, ChannelFactory, DnsServerAddressStreamProvider),
because we need to eliminate possible caching of NameResolver.resolve(java.lang.String)
by InflightNameResolver created in
DnsAddressResolverGroup.newResolver(EventLoop, ChannelFactory, DnsServerAddressStreamProvider). |
newNameResolver, newResolver, newResolverpublic RoundRobinDnsAddressResolverGroup(DnsNameResolverBuilder dnsResolverBuilder)
public RoundRobinDnsAddressResolverGroup(Class<? extends io.netty.channel.socket.DatagramChannel> channelType, DnsServerAddressStreamProvider nameServerProvider)
public RoundRobinDnsAddressResolverGroup(io.netty.channel.ChannelFactory<? extends io.netty.channel.socket.DatagramChannel> channelFactory,
DnsServerAddressStreamProvider nameServerProvider)
protected final io.netty.resolver.AddressResolver<InetSocketAddress> newAddressResolver(io.netty.channel.EventLoop eventLoop, io.netty.resolver.NameResolver<InetAddress> resolver) throws Exception
DnsAddressResolverGroup.newNameResolver(EventLoop, ChannelFactory, DnsServerAddressStreamProvider),
because we need to eliminate possible caching of NameResolver.resolve(java.lang.String)
by InflightNameResolver created in
DnsAddressResolverGroup.newResolver(EventLoop, ChannelFactory, DnsServerAddressStreamProvider).newAddressResolver in class DnsAddressResolverGroupExceptionCopyright © 2008–2025 The Netty Project. All rights reserved.