Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Added note about DNS

  • Loading branch information...
commit 77f2ea4067e70a6b2a7ead8e53ee6f136e11929a 1 parent e61e9cc
authored March 10, 2012

Showing 1 changed file with 8 additions and 0 deletions. Show diff stats Hide diff stats

  1. 8  README.md
8  README.md
Source Rendered
@@ -132,3 +132,11 @@ You can instrument class methods, just like instance methods, using the metaprog
132 132
 AWS::S3::Base.singleton_class.extend StatsD::Instrument
133 133
 AWS::S3::Base.singleton_class.statsd_measure :request, 'S3.request'
134 134
 ```
  135
+
  136
+## Reliance on DNS
  137
+Out of the box StatsD is set up to be unidirectional fire-and-forget over UDP. Configuring the StatsD host to be a non-ip will trigger a DNS lookup (ie synchronous round trip network call) for each metric sent. This can be particularly problematic in clouds that have a shared DNS infrastructure such as AWS.
  138
+
  139
+### Common Workarounds
  140
+1. Using an IP avoids the DNS lookup but generally requires an application deploy to change.
  141
+2. Hardcoding the DNS/IP pair in /etc/hosts allows the IP to change without redeploying your application but fails to scale as the number of servers increases.
  142
+3. Installing caching software such as nscd that uses the DNS TTL avoids most DNS lookups but makes the exact moment of change indeterminate.

0 notes on commit 77f2ea4

Please sign in to comment.
Something went wrong with that request. Please try again.