Representational State Tranfer - REST
REST (Representational State
Transfer) es un estilo de arquitectura de software para sistemas
hipermedias distribuidos tales como la Web. El término fue introducido en la
tesis doctoral de Roy Fielding en 2000, quien es uno de los principales autores
de la especificación de HTTP.
- ¿Principios de REST?
El estilo de arquitectura
subyacente a la Web es el modelo REST. Los objetivos de este estilo de
arquitectura se listan a continuación:
• Escalabilidad de la
interacción con los componentes. Una prueba de ellos
es la variedad de clientes que pueden acceder a través de la Web: estaciones de
trabajo, sistemas industriales, dispositivos móviles.
• Generalidad de interfaces. Gracias al protocolo HTTP, cualquier cliente puede interactuar con
cualquier servidor HTTP sin ninguna configuración especial.
• Puesta en funcionamiento
independiente. Los clientes y servidores pueden ser puestas en
funcionamiento durante años. Por tanto, los servidores antiguos deben ser
capaces de entenderse con clientes actuales y viceversa. Diseñar un protocolo
que permita este tipo de características resulta muy complicado. HTTP permite
la extensibilidad mediante el uso de las cabeceras, a través de las URIs, a
través de la habilidad para crear nuevos métodos y tipos de contenido.
• Compatibilidad con
componentes intermedios. Los más populares intermediaros
son varios tipos de proxys para Web. Algunos de ellos, las caches, se utilizan
para mejorar el rendimiento. Otros permiten reforzar las políticas de
seguridad: firewalls. Y por último, otro tipo importante de intermediarios,
gateway, permiten encapsular sistemas no propiamente Web. Por tanto, la
compatibilidad con intermediarios nos permite reducir la latencia de
interacción, reforzar la seguridad y encapsular otros sistemas.
- Métodos más importantes del REST
Los métodos HTTP más importantes son PUT, GET, POST y DELETE. A
continuación, mostramos las analogías que se realizan constantemente:
- Futuro de REST
Todos los negocios de cualquier lugar tendrán que estandarizar sus
modelos de direccionamiento para exponer las interfaces en común a sus clientes.
SOAP, actualmente no permite esto en si mismo. Para que los negocios
interoperen sin programar manualmente de manera explícita enlaces a los clientes,
se necesitará estandarizar un modelo de direccionamiento, más que invertir en sistemas
propietarios. REST proporciona un alto grado de estandarización. Por tanto, si
los servicios Web basados en SOAP no consiguen implantar este mecanismo, no
sobrevivirán por lo tanto y en conclusión creemos que se viene la era de los
Servicios Web basados en REST.
- Recomendaciones:
·
RESTEasy es un JBOSS que prove varios frameworks para ayudar a construer
WebServices RESTFUL junto con aplicaciones Java. Está totalmente certificado y
es portable.
http://resteasy.jboss.org/
·
Recess es un framework Restful PHP libre muy interesante. Igualmente, contiene
ejemplos, códigos, foros y posibilidad de descargar diferentes ejemplos como
referencia.
http://www.recessframework.org/
- Referencias:
- Paul
Prescod, “Roots of the REST/SOAP Debate”, http://www.prescod.net/rest/rest_vs_soap_overview/
- Wikipedia,
“Web Services”, http://en.wikipedia.org/wiki/Web_service
No hay comentarios:
Publicar un comentario