05 enero, 2009

Servicios web sobre el sistema DNS

Via Simon Willison encuentro esta web de David Leadbeater con una descripción de un servicio implementado por él para acceder a resumenes de artículos de la Wikipedia. Pero lo curioso de su implementación no reside en lo que hace sino en cómo lo hace: en lugar de usar el método habitual e implementar una interfície REST o la infumable SOAP, decide aprovechar el sistema de conversión de nombres de dominio (DNS) y aprovecharlo como un sistema para unir claves (la consulta del término) a descripciones...

Así que en foo.wp.dg.cx tiene implementado un servidor DNS que devuelve los resultados como registros TXT: Las respuestas están limitadas a 430 bytes y sólo usa UDP en lugar de una sesión TCP (más lenta), aunque por otra parte el resultado queda cacheado en el cliente DNS del usuario, debe soportar Unicode, acepta UTF-8 como entrada y es mucho más rápido que el tradicional HTTP.

Para probarlo se puede realizar una petición desde la consola:

linux$ host -t txt dns.wp.dg.cx

windows> nslookup -type=TXT dns.wp.dg.cx
con el resultado en ambos casos:

"DNS may refer to: Domain Name System, Internet system to translate names into IP addresses, Direct numerical simulation, 3,5-Dinitrosalicylic acid, Dinas Powys railway station, Wales (National Rail station code DNS), Doctor of Nursing Science \226\128\148 see Doctorate in Nursing, Deviated septum or deviated nasal septum, a physical disorder of the nose involving a displacement of the... http://a.vu/w:DNS"

Leadbeater también ofrece el servicio sobre HTTP (http://js-wp.dg.cx/js/dns) con un script greasemonkey de ejemplo que hace uso del servicio, y con una prueba con JSONP (javascript callback). También existe una presentación del servicio aquí.

No deja de ser una innovación en cuanto a implementación de un servicio web, aunque debido a la naturaleza del sistema DNS no pueda aprovecharse directamente desde el navegador...

Publicar un comentario en la entrada

Últimos links en indiza.com