Неблокирующие UDP
November 3, 2016

4 года назад я зажегся вот этим постом - Pssst... your Rails application has a secret to tell you и тут же начал отправлять метрики в HostedGraphite.
Подключил, прямо как в документации:
require 'socket'
sock = UDPSocket.new
sock.send "YOUR-API-KEY.foo 1.2\n", 0, "carbon.hostedgraphite.com", 2003
Но внезапно сайт стал скручивать ласты. Думаю вы уже догадались, хотя UDP-сообщения неблокирующие, а запросы к DNS еще как блокирующие. У хостера начались проблемы с DNS и сайт стал тормозить даже на маленькой нагрузке. Так что с хостед версией графита у нас не срослось. Увы.
Tweet