2011-06-17 16 views

Respuesta

14

UDDI se puede utilizar para servicios REST. Los WSDL se pueden usar para describir servicios web HTTP, pero francamente siento que no es una verdadera coincidencia para una arquitectura de recursos REST.

En el nivel más básico, UDDI es simplemente el mapeo de atributos para los puntos finales del servicio. Entonces, si simplemente está buscando un sistema que pueda hacer eso, entonces UDDI se ajustará a la factura.

UDDI no es popular en la Internet salvaje y abierta, pero se usa "detrás de escena" como un componente de orquestación.

Como mencionó Darrel, DNS es otro mecanismo de descubrimiento válido.

Mi queja personal con DNS es simplemente que aunque DNS tiene todas las ventajas mencionadas en el artículo que cita, la desventaja es que el DNS es una parte tan crítica del tejido de la red, que no está disponible para desarrolladores. Normalmente, las personas de operaciones de red (que tienden a ser más notorias incluso que los DBA) mantienen la infraestructura como DNS bastante cerca. Finalmente, aunque DNS es bastante capaz de realizar estas tareas, en muchos casos puede ser necesario cambiar la configuración predeterminada estándar y la implementación de DNS. Por ejemplo, comenzamos a servir certificados de DNS, por ejemplo, y tuvimos que habilitar TCP para DNS. De nuevo, esto significó una mayor participación de las operaciones de red.

Además de eso, aunque hay mucha experiencia y conocimiento de DNS en el mundo, el conocimiento y la experiencia de HTTP y "hacer cosas" en un servidor web es mucho mayor. Las consecuencias de eso simplemente significan que cuando los desarrolladores piensan y buscan algún tipo de solución a este problema, el primer lugar que van a buscar probablemente sea una solución basada en HTTP.

Por lo tanto, en ese sentido, UDDI es posiblemente una mejor solución, solo en términos de poder implementarla rápidamente y sin problemas.

Por supuesto, UDDI es un servicio basado en SOAP. Eso no es un gran problema, de verdad. No es una gran opción para un sistema RESTful, pero no es horrible. Funcional, aunque un poco "impuro".

En cuanto a un registro de servicio basado en HTTP estándar, no hay nada que yo sepa. Es razonable decir simplemente uno simplemente con HTML, por ejemplo. El hecho de que UDDI no haya despegado en el mundo en general no es tanto una limitación o leve contra UDDI. Más bien es simplemente que la visión de descubrir servicios arbitrarios realmente no ha llegado a buen término, la necesidad simplemente no está del todo allí. Hay mucho más involucrado fuera de banda con el descubrimiento de servicios más allá de la ubicación y la semántica, como las relaciones comerciales y tal.

Internamente, dentro de la empresa, la logística se resuelve, por lo que el descubrimiento del servicio tiene valor. Fuera en la naturaleza, no tanto.

2

UDDI fue diseñado para servicios SOAP, sin embargo, ni siquiera se usa para esos. UDDI estaba casi muerto a partir de 2006.

This El artículo muestra cómo usar DNS para hacer un descubrimiento.

+0

Sí, sé que está diseñado para SOAP. ¿Pero hay algún registro similar para REST? –

+0

Me doy cuenta de que esto va a sonar trillado, pero sí, se llama World Wide Web. En una nota más útil, eche un vistazo a este artículo http://www.infoq.com/articles/rest-discovery-dns –

3

No está muerto;)

  • firmó un desarrollador jUDDI juddi.apache.org

Editar: También hay WS-Discovery que es compatible tanto con CXF como con WCF. Vale la pena echarle un vistazo.

FWIW, UDDIv3 especifica una interfaz REST, sin embargo, no creo que nadie más que jUDDI lo haya implementado. Se incluirá con v3.2 y superior utilizando CXF, Jettison y WADL. Fuente: http://svn.apache.org/repos/asf/juddi/trunk/juddi-rest-cxf/src/main/java/org/apache/juddi/api/impl/rest/UDDIInquiryJAXRS.java

Cuestiones relacionadas