Report this

What is the reason for this report?

Making an HTTP request from my Droplet is painfully slow (DNS lookup issue?)

Posted on November 24, 2014

It takes 10+ seconds for an HTTP request from my Droplet to another server to complete. I can confirm that it’s not an issue with poor application code, but something deeper at the networking level. Just running basic curl and outputting timings produces:

$ curl -w "@curl-timings" -o /dev/null -s google.com

            time_namelookup:  10.044
               time_connect:  10.045
            time_appconnect:  0.000
           time_pretransfer:  10.045
              time_redirect:  0.000
         time_starttransfer:  10.065
                            ----------
                 time_total:  10.065

But as soon as you replace the domain name:

$ curl -w "@curl-timings" -o /dev/null -s 173.194.123.70

            time_namelookup:  0.000
               time_connect:  0.001
            time_appconnect:  0.000
           time_pretransfer:  0.001
              time_redirect:  0.000
         time_starttransfer:  0.039
                            ----------
                 time_total:  0.039

This smells like something to do with how my Droplet is performing DNS lookup/resolution, but I don’t really know where to start looking or what to poke around at. Any help?



This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Seems like the problem is that you are listing a resolver 4.2.2.2, which doesn’t want anything to do with your droplet. The delay you suffered were from every lookup first timing out on the first entry before moving on to the second.

Unless you have any particular reason for wanting to use 4.2.2.2, you might instead want to use both the Google resolvers in your resolv.conf

nameserver 8.8.8.8
nameserver 8.8.4.4

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.