toddsundsted / stunt

LambdaMOO with multiple inheritance, anonymous objects, HTTP, JSON <-> MOO translation, better crypto, a map datatype and a RESTful interface.
http://stunt.io/
72 stars 17 forks source link

Forced name resolution slows HTTP request response time #2

Closed katernya closed 11 years ago

katernya commented 12 years ago

When an HTTP client connects the server is forced to attempt conversion of the IP address into a name, slowing response time.

Ideally this behavior could be controlled somehow. A few ideas:

Honestly I don't see reverse name resolution as being particularly important. The value of this feature has long since passed, in my opinion. It's no longer useful for automated character creation as it was in the past.

I'd be interested in feedback in this area.

toddsundsted commented 12 years ago

LambdaMOO already has the code necessary to handle the death of the child process that does the lookup, and gracefully falls back to using the IP address when this happens, so a compile-time switch would be relatively easy to add. Overriding the setting per-listener would involve adding a flag to slistener (off-hand) and making that flag value available where the actual lookup occurs.

It's possible to do this lookup in-MOO -- see Martian's DNS Utilities -- http://www.martian.at/Code/MOO/dns_utils.moo. At some level, I'd prefer to see any/all non-performance-critical code moved out of the server and into a core/library.