Ir al contenido principal

Un vistazo a gRPC: una alternativa a SOAP y REST

gRPC es un marco RPC universal de alto rendimiento. gRPC tiene soporte para la interoperabilidad entre varios lenguajes como Java, C++, C#, Go, Dart, Kotlin, NodeJS, Objective-C, PHP, Python, Ruby, Rust y muchos más.

gRPC tiene un esquema para la definición del servicio y puede generar código basado en ese esquema.

gRPC también es compatible con la transmisión bidireccional y la autenticación con el protocolo HTTP/2. Square, CoreOS, Cisco, CockroachLabs, Netflix y muchas otras empresas han probado gRPC. gRPC también es parte del proyecto CNCF.

Es, básicamente, una alternativa a SOAP y REST.

Nota: Debemos tener la herramienta Protobuf instalada.

En este post usaremos Python para crear un primer ejemplo. Actualizamos la herramienta pip.

$ python -m pip install --upgrade pip

Instalamos grpcio:

$ python -m pip install grpcio

Instalamos las herramientas gRPC:

$ python -m pip install grpcio-tools

Clonamos un ejemplo del repositorio en Github:

# Clone the repository to get the example code:
$ git clone -b v1.62.0 --depth 1 --shallow-submodules https://github.com/grpc/grpc
# Navigate to the "hello, world" Python example:
$ cd grpc/examples/python/helloworld

Abrimos una terminal, que será el servidor, y tecleamos:

$ python greeter_server.py

Abrimos otra terminal, que será el cliente, y tecleamos:

$ python greeter_client.py

¡Hemos creado nuestra primera aplicación cliente-servidor con gRPC!

Más ejemplos en próximas entregas.

Enlaces:

https://grpc.io/
https://alquimistadecodigo.blogspot.com/2023/11/grpc-unleashed-con-renato-aguilar-de.html
https://alquimistadecodigo.blogspot.com/2022/11/grpc-with-java-15.html
Protobuf

Comentarios