REST: qué es y características

Presentamos REST: qué es, características y funciones, que puede abonar para la productividad para desarrolladores y programadores.

 ¿Qué es REST?

Representational State Transfer (REST, por sus traducción) ​​es un estilo arquitectónico que ha ganado mucha popularidad en los últimos años.

Características

Facilidad de implementar

REST funciona a través de HTTP (en realidad, HTTP fue influenciado por REST). Por lo tanto, utiliza elementos HTTP como son: GET, POST y PUT.

Además, la clara separación del código del cliente y del servidor facilita que diversos equipos trabajen en diferentes partes (front-end o back-end) de las aplicaciones.

A su vez, sus principios pueden ayudar a aumentar la productividad del equipo de desarrollo y son importantes especialmente si se va a lanzar una API pública para que la gente desarrolle aplicaciones.

Escalabilidad

Uno de los principios básicos de REST es que no tiene estado en el lado del servidor. Por tanto, cada solicitud será procesada de forma independiente a las anteriores.

En aplicaciones con un estado o sesiones del lado del servidor, se almacena una sesión para cada usuario que haya iniciado sesión. Los datos de esta sesión pueden inflarse fácilmente y comenzar a ocupar muchos recursos en el servidor.

Por otro lado, los servidores sin estado solo mantienen ocupados los recursos (memoria) cuando están manejando una solicitud y la liberan tan pronto como se procesa la solicitud.

Dado que la tendencia actual en la escalabilidad es el escalamiento horizontal (generalmente en la nube), el almacenamiento de sesiones del lado del servidor también puede dificultar el escalado de su aplicación por crear algunos problemas.

Formato de intercambio de datos rápido

Las API RESTful suele utilizar JSON como formato de intercambio de datos y JSON es mucho más compacto y de menor tamaño en comparación con XML. También se puede analizar más rápido que XML.

Si bien en su mayoría operan con JSON, también hay que tener en cuenta que las API REST aún pueden responder con diferentes formatos al hacer uso del encabezado Accept.

Almacenamiento en caché fácil

El almacenamiento en caché es un factor crítico para la escalabilidad y el rendimiento de una aplicación web moderna. Un mecanismo de caché bien establecido (con las mejores tasas de aciertos posibles) puede disminuir el tiempo de respuesta promedio del servidor.

REST tiene como objetivo facilitar el almacenamiento en caché, dado que el servidor no tiene estado y cada solicitud se puede procesar individualmente, las solicitudes GET generalmente deben devolver la misma respuesta independientemente de las anteriores y la sesión.

Flexibilidad

Por flexibilidad, es decir, que es fácil de modificar y también puede responder a muchos clientes que pueden solicitar diferentes tipos de datos (XML, JSON, etc.). El cliente puede especificar el tipo usando el encabezado Accept y la API REST puede devolver respuestas dependiendo de eso.

Otro mecanismo que vale la pena mencionar es HATEOAS que se refiere a devolver las URL relacionadas en la respuesta del servidor para un recurso en particular.

Leíste: REST: qué es y características, te recomendamos: Crear aplicaciones de WordPress de una página sin API REST

Te invitamos a que nos sigas en nuestras redes sociales: Facebook, Twitter, Instagram y Youtube con el perfil: @tortugacode