On 08/01/14 23:05, Glyph Lefkowitz wrote:
However, if you’re building a big service to run in the cloud, or on a VPN, on specially-tuned machines that you configured, using twisted.names can be more scalable and allow you to react more reasonably to high load situations. Or, at least, it will give you a level of control so that you can tune it, since just doing potentially blocking platform stuff in a thread is not amenable to tuning.
Sure, agreed - I folded those concerns into the "user-supplied names" bit ;o)
Using a resolver directly is totally appropriate in certain use-cases, and t.names is a good choice if you're using Twisted[1] but I think of it like "should I use UDP instead of TCP for my protocol" - if you have to ask, the answer is no.
(In fairness to the Chrome guys, they've probably got the chops to reimplement it properly and are doing enough innovative stuff in Chrome that having an in-browser resolver is reasonable, so my dig at them is probably unfair ;o)
[1] Modulo a couple of rather big holes that I know people are already working on, like source-port randomisation for Kaminsky-resistance, and so on.
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python