Кэширование DNS-запросов в Ruby

Мы используем гем rest-client в Ruby для автоматического тестирования нашего REST API. Однако я заметил, что при каждом отдельном запросе он также выполняет поиск имени хоста в DNS. В локальной среде, если используется «localhost», тесты выполняются быстро, но если используется правильное имя хоста, они занимают в 2,5 раза больше времени, выполняя огромное количество запросов DNS.

Я считаю, что эта проблема связана не с остальным клиентом, а с базовой сетью Ruby. Я пробовал требовать «разрешить» и «разрешить-заменить», но они не помогли. 'dig' сообщает, что DNS-запрос имеет TTL 1 час.

Есть ли способ заставить Ruby кэшировать DNS-запросы? Я мог бы изменить код, чтобы явно использовать IP-адрес, но это неправильное место для решения проблемы.

Я использую Ubuntu 12.04 и Ruby 1.9.3.

5
задан Sampo 15 May 2012 в 08:50
поделиться