gRPC, el framework que cambiará el paradigma de microservicios usando HTTP/2

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/

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.