Scroll to navigation

AnyEvent::CacheDNS(3pm) User Contributed Perl Documentation AnyEvent::CacheDNS(3pm)


AnyEvent::CacheDNS - Simple DNS resolver with caching


        use AnyEvent;
        use AnyEvent::HTTP;
        # Register our DNS resolver as the default resolver
        use AnyEvent::CacheDNS ':register';
        # Use AnyEvent as ususal
        my $cond = AnyEvent->condvar;
        http_get "", sub { $cond->send(); };


This module provides a very simple DNS resolver that caches its results and can improve the connection times to remote hosts.


It's possible to register the this class as AnyEvent's main DNS resolver by passing the tag ":register" in the "use" statement.



Registers a new DNS cache instance as AnyEvent's global DNS resolver.


The effect of setting this variable differs depending on AnyEvent version.
Default DNS response record cache TTL for older AnyEvent versions. AnyEvent::DNS <= 6.x doesn't report record TTL and records get cached for infinite amount of time, therefore running programs won't detect if cached DNS records have changed.

NOTE: Setting this variable to 0 disables purging records from cache.

Newer versions of AnyEvent report DNS record TTL so records will be purged from the cache after their TTL expires. Setting this variable to any positive integer OVERRIDES the TTL for all records to the specified value, setting variable to 0 disables purging records from the cache.


Emmanuel Rodriguez <>


(C) 2011 Emmanuel Rodriguez - All Rights Reserved.

2022-06-05 perl v5.34.0