Cloud Endpoints para gRPC APIs

gRPC é uma biblioteca RPC universal de código aberto de alto desempenho desenvolvida pelo Google. No gRPC, um aplicativo cliente pode chamar métodos diretamente em um aplicativo servidor de uma outra máquina, como se ela fosse um objeto local, facilitando a criação de aplicativos e serviços distribuídos.

No Google Cloud Endpoints para gRPC, use os recursos de gerenciamento de API do Cloud Endpoints para adicionar um console de API, monitoramento, hospedagem, rastreamento, autenticação e muito mais aos serviços gRPC. Além disso, uma vez especificadas as regras de mapeamento especiais, o Extensible Server Proxy (ESP) para gRPC converte o RESTful JSON no HTTP em solicitações gRPC. Isso significa que é possível implantar um servidor gRPC gerenciado pelo Cloud Endpoints e chamar sua API usando um cliente gRPC ou JSON/HTTP, proporcionando muito mais flexibilidade e facilidade de integração com outros sistemas.

gRPC Endpoints Service

Crie serviços gRPC para Cloud Endpoints em qualquer linguagem compatível com o gRPC. Descubra muito mais sobre o gRPC, inclusive guias de início rápido e tutoriais para criar servidores e clientes no site do gRPC.

Atualmente, o gerenciamento de API do Cloud Endpoints para gRPC APIs é compatível com:

Definição e configuração de serviço

O gRPC tem como base o conceito da definição de um serviço por especificação dos métodos que podem ser chamados remotamente com seus parâmetros e tipos de retorno. Por padrão, o gRPC usa buffers de protocolo como a linguagem IDL (Interface Definition Language) para descrever a interface do serviço e a estrutura das mensagens de payload.

// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}

// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}

// The response message containing the greetings
message HelloReply {
  string message = 1;
}

Para usar o gRPC com o Cloud Endpoints, forneça uma configuração de serviço juntamente com a definição do serviço. Isso define o comportamento de tempo de execução do serviço, inclusive a autenticação, as APIs incluídas no serviço, os mapeamentos das solicitações HTTP para métodos gRPC e as configurações especiais do Cloud Endpoints.

Transcodificação

O Google Cloud Endpoints fornece conversão de protocolo para serviços gRPC, para que os clientes possam usar HTTP/JSON na comunicação com um serviço gRPC por meio do Extensible Service Proxy.

O caso de uso mais comum é a comunicação dos clientes de navegador com servidores gRPC sem suporte especial de bibliotecas do servidor gRPC. O Cloud Endpoints fornece um mecanismo para mapear solicitações HTTP para métodos do gRPC como parte da configuração do serviço.

Limitações

Os seguintes recursos do gRPC ainda não são compatíveis com o Cloud Endpoints:

  • compactação de payload
  • qualquer IDL que não é buffer de protocolo

O Cloud Endpoints não é compatível com ambientes do App Engine para serviços gRPC. Ele é compatível somente com o Container Engine e o Computer Engine com Docker.

Próximos passos

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.