Glosario Técnico

gRPC

Definición: Framework de comunicacion remota de alto rendimiento desarrollado por Google que utiliza Protocol Buffers y HTTP/2 para comunicacion eficiente entre servicios.

— Fuente: NERVICO, Consultoría de Desarrollo de Producto

Que es gRPC

gRPC (Google Remote Procedure Call) es un framework de comunicacion remota de alto rendimiento y codigo abierto desarrollado por Google. Permite que un servicio llame a funciones de otro servicio remoto como si fueran llamadas locales, utilizando Protocol Buffers como formato de serializacion y HTTP/2 como protocolo de transporte. A diferencia de REST, que trabaja con recursos y verbos HTTP, gRPC trabaja con definiciones de servicio y llamadas a procedimientos tipados.

Como funciona

El desarrollador define los servicios y los mensajes en un archivo .proto usando Protocol Buffers. A partir de esa definicion, gRPC genera automaticamente el codigo cliente y servidor en multiples lenguajes (Go, Java, Python, TypeScript, entre otros). La comunicacion viaja sobre HTTP/2, lo que permite multiplexacion de peticiones, compresion de cabeceras y streaming bidireccional. gRPC soporta cuatro patrones de comunicacion: unario (request-response), streaming del servidor, streaming del cliente y streaming bidireccional.

Por que importa

En arquitecturas de microservicios con alta frecuencia de comunicacion interna, la eficiencia del protocolo marca una diferencia significativa. gRPC serializa datos en formato binario (hasta 10 veces mas rapido que JSON), mantiene conexiones persistentes y soporta streaming nativo. Esto lo convierte en la opcion preferida para comunicacion servicio-a-servicio donde la latencia y el throughput son criticos.

Ejemplo practico

Una plataforma de e-commerce tiene un servicio de catalogo, uno de inventario y uno de precios. Con REST, cada consulta de producto requiere tres llamadas HTTP independientes con serializacion JSON. Con gRPC, las tres llamadas usan conexiones persistentes HTTP/2 multiplexadas y serializacion binaria. El resultado: la latencia de la pagina de producto baja de 120 milisegundos a 35 milisegundos, y el consumo de ancho de banda interno se reduce un 60%.

Terminos relacionados

¿Necesitas ayuda con desarrollo de producto?

Te ayudamos a acelerar tu desarrollo con tecnología puntera y mejores prácticas.