+ Performance para suas aplicações!

Rafael Almeida

www.ralms.net

@ralmsdeveloper

Quem desenvolveu?

Introdução ao gRPC

É uma estrutura de RPC (Chamada de Procedimento Remoto) independente de linguagem e  de alto desempenho.

 

Estrutura RPC leve, de alto desempenho e moderna.

Benefícios

Uso de rede reduzida com a serialização binária Protobuf.

Dá suporte ao cliente, servidor e chamadas bi-direcionais de streaming.

As ferramentas disponíveis para várias linguagens gerarem clientes e servidores fortemente tipados.

Desenvolvimento da API de primeiro contrato, usando buffers de protocolo, por padrão, permitindo implementações independente de linguagem.

Em serviços no qual a eficiência é crítica.

Onde posso usar?

Sistemas poliglotas, nos quais múltiplas linguagens são necessárias para o desenvolvimento.

Serviços ponto a ponto em tempo real que precisam lidar com solicitações ou respostas de streaming.

HTTP/2

  • Dados trafegados de forma binária
  • Requisições multiplexadas

HTTP/2

IDL

HTTP/2

Protobuf

syntax = "proto3";

option csharp_namespace = "Ralms"; 
 
service PaymentService {
  rpc SendPayment (PaymentRequest) returns (PaymentResponse);
}
 
message PaymentRequest {
  string BrandCard = 1;
  int64 Amount = 2;
  repeated Product Product = 3; 
}

message Product {
  int32 Id = 2;	
  string description = 1;
}
 
message PaymentResponse {
  string Message = 1;
}

Obrigado!!!

 

https://ralms.io

Twitter: @ralmsdeveloper