Por Pablo Andrés Marín Arrieta - Estudiante de la carrera de Informática
Con el paso del tiempo se han desarrollado un sinnúmero de protocolos, mecanismos, métodos y tipos de arquitecturas para lograr una confiable, ágil y segura transmisión de datos. Sin embargo, no todos han logrado tener la aceptación y grado de utilización como los dos tipos de arquitectura en discusión: P2P y REST, los cuales, a pesar de sus grandes diferencias, son respuesta a diferentes problemáticas y son esenciales para muchas aplicaciones y tareas en el mundo informático actual.
A continuación, pondremos en comparación dichas arquitecturas. A partir de su funcionalidad y utilización se evaluará el rendimiento de cada una para conocer cuál logra tareas más eficaces y eficientes a la hora de su implementación.
Para poder lograr una comparación objetiva es imprescindible conocer un poco más a fondo las tecnologías en discusión. Por consiguiente, nos adentraremos en cada una de ellas.
A. Peer to Peer (P2P)
P2P es un tipo de arquitectura de comunicación descentralizada, la cual permite comunicación entre dos o más dispositivos directamente, sin tener que acceder a un servidor que almacene o tenga acceso a la información transmitida. P2P se utiliza en aplicaciones como Skype para VoIP, Tor para navegación anónima, Bitcoin y BitTorrent (Panda Security, 2010). De esta manera, se entiende lo siguiente:
1. Ventajas
• Transferencia ágil y rápida, ya que aprovecha todo el ancho de banda y almacenamiento del cliente.
• Transmisión de información segura y controlada, ya que no llega a pasar por uno o más servidores centralizados de terceros.
• No existe una autoridad central única que se pueda eliminar o bloquear y colapsar toda la red P2P (Panda Security, 2010).
2. Desventajas
• Consumo excesivo de recursos.
• Peligro de fuga de datos.
• No existe un control de acceso a la información (Panda Security, 2010).
B. REST API
REST (Representational State Transfer) es un protocolo de intercambio y manipulación de datos en los servicios de internet. Este protocolo necesita una arquitectura definida para trabajar; opuesto a P2P, trabaja conectando un cliente y un servidor. Este protocolo es el más usado para realizar transacciones, consultas y manejo de información por servicios web en toda la internet. Utiliza las propiedades de HTTP para funcionar, y se basa simplemente de URLs para realizar sus tareas (Rouse, Bedell, Hannan y Wilson, 2014).
3. Ventajas
• Visibilidad, fiabilidad, escalabilidad y gran manejo de cargas.
• Separación entre el cliente y el servidor, permitiendo control de acceso y seguridad.
• REST es independiente de los lenguajes de presentación, por lo cual logra una utilización e integración fácil entre diferentes aplicaciones (Rouse, Bedell, Hannan y Wilson, 2014).
4. Desventajas
• Necesita una buena configuración para mantener seguridad adecuada.
• Al utilizar operaciones CRUD, se ve limitado a sus opciones y esto expone su inflexibilidad.
• El versionado de REST causa múltiples inconvenientes en producción y a la hora de depreciar APIs (Rodríguez, 2016).
Las tecnologías para la transmisión de datos discutidas en este texto son un poco distintas entre sí mismas y, a la vez, en su utilización y razón de ser. Sin embargo, comparándolas en un mismo entorno, son fuertes rivales.
P2P es una solución sumamente fuerte y robusta. Sin embargo, conlleva tecnología un poco desactualizada que también puede incurrir en perdida de información. Por el contrario, REST se mantiene como el protocolo más usado en internet para la transmisión de datos, ya que se puede desarrollar un ambiente seguro de trabajo, el cual conecta recursos internos y externos sin exponer los servidores propiamente, y cumple de forma amplia con los estándares de disponibilidad de servicio.
MOXIE es el Canal de ULACIT (www.ulacit.ac.cr), producido por y para los estudiantes universitarios, en alianza con el medio periodístico independiente Delfino.cr, con el propósito de brindarles un espacio para generar y difundir sus ideas. Se llama Moxie - que en inglés urbano significa tener la capacidad de enfrentar las dificultades con inteligencia, audacia y valentía - en honor a nuestros alumnos, cuyo “moxie” los caracteriza.
Referencias Bibliográficas:
-
Panda Security. (2010). ¿Qué es Peer-To-Peer (P2P)? Panda Security. Recuperado de http://resources.pandasecurity.com/enterprise/solutions/8.%20WP%20PCIP%20que%20es%20p2p.pdf
-
Rodríguez, T. (7 de diciembre de 2016). ¿Por qué deberíamos abandonar REST y empezar a usar GraphQL en nuestras APIs? Genbeta. Recuperado de https://www.genbeta.com/desarrollo/por-que-deberiamos-abandonar-rest-y-empezar-a-usar-graphql-en-nuestras-apis
-
Rouse, M., Bedell, C., Hannan, E. y Wilson, S. (2014). RESTful API (REST API). SearchApp Architecture. Recuperado de https://searchapparchitecture.techtarget.com/definition/RESTful-API