gRPC ha sido el framework usado internamente por Google para conectar microservicios. Mejorado durante el tiempo llegó a una potente evolución que ha unido a este framework RPC (Remote Procedure Call) con el reciente y casi estandarizado HTTP/2. Google ha decidido lanzarlo públicamente a la comunidad Open Source.
¿Por qué es tan interesante gRPC?
El foco principal es el rendimiento, hablamos en términos observables de CPU y de ancho de banda, mejora de latencia al propagar datos de forma masiva a distintos datacenters, mayor eficiencia en comunicaciones con dispositivos móviles (batería, disponibilidad, …), tiempo real, desarrollo de APIs más responsives y escalables.
Construido sobre HTTP/2 aporta capacidades nativas de bidirecionalidad, control de flujo de datos, compresión de cabeceras, multiple de peticiones sobre una única conexión TCP. No es una reescritura del actual HTTP/1.1 sino que los status code o la semantica se mantiene.
Librerías de implementación y serialización
gRPC viene con librerías para distintos lenguajes para empezar a construir implementaciones: C, C++, C#, Go, Java, Node.js, Objective-C, PHP, Python, Ruby. Entre todas ellas Java es la que se encuentra más madura actualmente, el resto se encuentran en fase alpha o pre-alpha.
Otro aporte interesante es la evolución de la serialización de objetos con Proto3, la nueva versión de Protocol Buf que simplifica la sintaxis y con soporte para más lenguajes y JSON encodings. gRPC puede ser extendido para soportar más formatos.
Todo el código está disponible en GitHub, tanto los primeros ejemplos y la documentación de gRPC.
Link: http://www.grpc.io/
Fuente: http://www.genbetadev.com/
- Encuesta septiembre 2021: ¿Cómo crees que afectan las tecnologías de la información en la educación? – 6 septiembre, 2021
- ¡Ya llega Programmer’s Week 2021! – 3 septiembre, 2021
- Encuesta agosto 2021: ¿En qué sector IT te desarrollas o te gustaría desarrollarte? – 6 agosto, 2021
Deja una respuesta