APIs
8
min de lectura
2 de mayo de 2019

APIs REST, GraphQL o gRPC - ¿Quién gana este juego?

Rafael Rocha
Head de Soluciones y Preventa
Tecnólogo en Tecnología de la Información de la UNESP y postgrado en MBA Business Management de la UNIMEP.
Más sobre el autor

*El artículo es un resumen de la presentación realizada durante APIDays Madrid 2019 Las APIs estándar REST son las más comunes, pero las APIs GraphQL y gRPC están ganando popularidad, así como las dudas sobre la mejor aplicación de estos estándares.

¿Cuáles son las características y ventajas de cada una de estas normas?

¿Qué norma debemos elegir para nuestro proyecto?

APIs GraphQL -REST - gRPC

Para aclarar estos puntos, consideraremos los requisitos de 3 de los principales casos de uso con API y entenderemos cómo puede contribuir cada norma en estos casos.

Principales casos de uso con APIs:

  1. APIs de experiencia
  2. APIs abiertas
  3. APIs internas

1) APIs de experiencia

Son APIs para ser consumidas por aplicaciones y dispositivos frontales para experiencias digitales.

A continuación se indican algunos requisitos:

  • Reducción del tiempo de transferencia de datos
  • Menor tiempo de respuesta
  • Utilizar junto con la norma BFF
  • Menos solicitudes de representación en pantalla
  • Mayor nivel de control
APIs REST

2) APIs abiertas

Son APIs para integraciones con socios e innovación abierta.

Algunos requisitos son:

  • Experiencia de usuario sencilla y siguiendo los estándares más conocidos
  • Reutilización de APIs
  • Documentación detallada
  • Mayor nivel de seguridad
  • Mayor nivel de gobernanza
APIs abiertas, APIs REST

3) APIs internas

Son APIs para la comunicación entre microservicios e integraciones internas.

A continuación se indican algunos requisitos:

  • Compatibilidad con la arquitectura de eventos o arquitectura reactiva
  • Mejor rendimiento
  • Mayor escalabilidad
  • Mayor nivel de control y supervisión
APIs internas

APIs REST, GraphQL y gRPC: Comparación

En la siguiente tabla, hemos comparado las características estándar de REST, GraphQL y gRPC:

API Days Madrid 2019 - REST, GraphQL y gRPC
Principales diferencias - REST, GraphQL y gRPC

¿Y ahora qué? ¿Cuál es la mejor opción? ¿REST, GraphQL o gRPC?

Para elegir la mejor opción para su proyecto, le sugerimos hacer una matriz de elegibilidad, donde estarán los requisitos del caso de uso y una puntuación para cada norma.

Por ejemplo APIs de experiencia - REST, GraphQL y gRPC Matriz de elegibilidad

Experiencia en APIs - REST, GraphQL y gRPC

Por ejemplo APIs abiertas - REST, GraphQL y gRPC Matriz de elegibilidad

APIs REST gRPC

Por ejemplo APIs internas - REST, GraphQL y gRPC Matriz de elegibilidad

APIs internas - REST, GraphQL y gRPC

¡Gracias por leer!