Esta página se tradujo automáticamente con la API de traducción de Google Cloud.
Algunas páginas se pueden leer mejor en su totalidad.
gRPC es un marco RPC moderno de código abierto y alto rendimiento que puede ejecutarse en cualquier entorno. Utiliza HTTP/2 para el transporte y Protocol Buffers como lenguaje de descripción de la interfaz.
gRPC está diseñado para ser:
En este artículo, veremos cómo usar gRPC para una comunicación de alto rendimiento en el desarrollo de back-end.
Hay muchas razones para usar gRPC, pero algunas de las más importantes son:
Usar gRPC es simple. El primer paso es instalar la biblioteca gRPC para el lenguaje de programación elegido. Luego, debe definir su servicio en un archivo .proto utilizando el lenguaje de descripción de la interfaz de Protocol Buffers. Finalmente, debe escribir su código para implementar el servicio.
Echemos un vistazo a un ejemplo simple. Crearemos un servicio que tome un nombre y devuelva un saludo.
Primero, necesitamos instalar la biblioteca gRPC para Node.js:
npm install grpc
A continuación, debemos definir nuestro servicio en un archivo .proto. Llamaremos a nuestro archivo greeting.proto:
syntax = "proto3";
package greet;
service Greeter {
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
message HelloRequest {
string name = 1;
}
message HelloReply {
string message = 1;
}
En este archivo, hemos definido un servicio llamado Greeter con un solo método llamado SayHello. Este método toma una HelloRequest, que contiene un nombre, y devuelve una HelloReply, que contiene un mensaje.
Finalmente, necesitamos escribir nuestro código para implementar el servicio. Crearemos un archivo llamado greetinger_server.js:
var grpc = require('grpc');
var protoLoader = require('@grpc/proto-loader');
var packageDefinition = protoLoader.loadSync(
__dirname + '/greet.proto',
{
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true
});
var greet_proto = grpc.loadPackageDefinition(packageDefinition).greet;
function sayHello(call, callback) {
callback(null, {message: 'Hello ' + call.request.name});
}
function main() {
var server = new grpc.Server();
server.addService(greet_proto.Greeter.service, {sayHello: sayHello});
server.bind('0.0.0.0:50051', grpc.ServerCredentials.createInsecure());
server.start();
}
main();
En este archivo, hemos importado las bibliotecas grpc y proto-loader. Hemos cargado nuestro archivo .proto y definido nuestro método SayHello. Finalmente, creamos un servidor gRPC y lo iniciamos en el puerto 50051.
En este artículo, analizamos cómo usar gRPC para una comunicación de alto rendimiento en el desarrollo de back-end. Hemos visto cómo instalar la biblioteca gRPC, cómo definir un servicio en un archivo .proto y cómo escribir código para implementar el servicio.