NodeJs — Distributed Systems with gRPC
gRPC is a high-performance framework for connecting services in distributed systems. It uses protocol buffers for efficient data serialization and works well for microservices communication.
npm install @grpc/grpc-js @grpc/proto-loader
const grpc = require('@grpc/grpc-js');
const protoLoader = require('@grpc/proto-loader');
const packageDefinition = protoLoader.loadSync('service.proto');
const myProto = grpc.loadPackageDefinition(packageDefinition);
const server = new grpc.Server();
server.addService(myProto.MyService.service, {
sayHello: (call, callback) => {
callback(null, { message: 'Hello, gRPC!' });
}
});
server.bindAsync('0.0.0.0:50051', grpc.ServerCredentials.createInsecure(), () => {
server.start();
});