Uso de gRPC

Contenido

Protocolo RPC

(RPC) de alto rendimiento y de código abierto desarrollado por Google.

Utiliza el protocolo de transporte HTTP/2 y el formato de serialización de datos Protocol Buffers para enviar y recibir mensajes entre aplicaciones cliente y servidor.

A diferencia de otras tecnologías RPC, como REST (Representational State Transfer), que utiliza HTTP para la comunicación y JSON para la serialización de datos, gRPC proporciona un alto rendimiento, eficiencia y escalabilidad, y está diseñado para su uso en entornos distribuidos, en los que las aplicaciones cliente y servidor pueden estar escritas en diferentes lenguajes de programación y se ejecutan en diferentes plataformas.

Además, gRPC ofrece características avanzadas, como la generación automática de código, el streaming bidireccional, la autenticación y el cifrado de extremo a extremo, lo que lo hace ideal para aplicaciones que requieren una comunicación rápida, segura y confiable entre diferentes componentes del sistema.

Protocolo gRPC

gRPC proporciona una herramienta llamada gRPC proxy, que permite convertir peticiones gRPC en peticiones RESTful y viceversa.

Para convertir peticiones gRPC en peticiones RESTful, el gRPC proxy actúa como un servidor RESTful que acepta peticiones HTTP/1.1 y las convierte en peticiones gRPC. El gRPC proxy es responsable de convertir el contenido de la solicitud y respuesta de HTTP/1.1 en el formato de serialización de Protocol Buffers que se utiliza en gRPC.

Para convertir peticiones RESTful en peticiones gRPC, el gRPC proxy actúa como un cliente gRPC que envía peticiones gRPC a un servidor gRPC. El gRPC proxy es responsable de convertir el contenido de la solicitud y respuesta de RESTful en el formato de serialización de Protocol Buffers que se utiliza en gRPC.

Para utilizar el gRPC proxy, se deben seguir los siguientes pasos:

  1. Iniciar el gRPC proxy: Se inicia el gRPC proxy en un puerto determinado, indicando el servidor gRPC al que se conectará.

  2. Configurar el servidor RESTful o el cliente RESTful: La aplicación cliente o servidor debe estar configurada para enviar y recibir peticiones HTTP/1.1 a través del puerto donde se encuentra el gRPC proxy.

  3. Realizar peticiones: Una vez que se ha iniciado el gRPC proxy y se ha configurado la aplicación cliente o servidor, se pueden realizar peticiones RESTful o gRPC de manera normal.

Carga de archivos

Cargar un archivo .proto de gRPC en Postman y probar servicios. Este documento proporciona una guía detallada sobre cómo cargar y probar servicios definidos en un archivo .proto de gRPC utilizando Postman.

Pre-requisitos

  • Tener instalado Postman.

  • Tener el archivo .proto que desees probar (para este ejemplo se va a utilizar el archivo .proto del servicio TokenActivationService).

Pasos

  1. Importar archivo .proto en Postman:

    1. Abre Postman.

    2. Haz clic en el botón "Import" en la esquina superior izquierda.

    3. Selecciona el archivo .proto que desees cargar. En este caso, selecciona el archivo .proto que contiene el servicio TokenActivationService.

    4. Postman debería reconocer y parsear el archivo .proto y mostrar un resumen de lo que se ha importado.

       

  2. Realizar una solicitud gRPC:

    • generateActivationKey:

      1. Selecciona la solicitud generateActivationKey en Postman.

      2. Ve a la sección "Message" y completa el campo keyId con un valor válido.

      3. Haz clic en el botón "Ivoke" para realizar la solicitud.

      4. Si todo está configurado correctamente, recibirás una respuesta de tipo TokenActivationGenerateResponse que contendrá el activationToken.

  3. Validación y resolución de problemas:

    • Si encuentras algún problema al hacer las solicitudes, verifica que:

      1. La dirección y puerto del servidor gRPC estén correctos.

      2. Los datos proporcionados en las solicitudes sean válidos.

      3. El servidor gRPC esté activo y escuchando las peticiones.

      4. No haya errores en tu archivo .proto.

Con estos pasos, deberías ser capaz de cargar tu archivo .proto en Postman y probar los servicios gRPC que tiene definidos. ¡Buena suerte!