GRPCgRPC (gRPC Remote Procedure Calls[1]) também conhecido como Google Remote Procedure Call é um sistema de código aberto de chamada de procedimento remoto (RPC) desenvolvido inicialmente no Google em 2015 como a próxima geração de a infraestrutura RPC, Stubby.[2][3] Ele usa HTTP/2 para transporte, Protocol Buffers como a linguagem de descrição da interface e fornece recursos como autenticação, streaming bidirecional e controle de fluxo, ligações de bloqueio ou não, e cancelamento e tempos limite. Ele gera ligações de cliente e servidor de plataforma cruzada para muitos idiomas. Os cenários de uso mais comuns incluem serviços de conexão em uma arquitetura de estilo de microsserviços ou conexão de clientes de dispositivos móveis a serviços de back-end.[3] O uso complexo de HTTP/2 pelo gRPC impossibilita a implementação de um cliente gRPC no navegador, exigindo um proxy.[4] AutenticaçãoO gRPC oferece suporte ao uso de TLS e autenticação baseada em token. A conexão com os serviços do Google deve usar TLS. Existem dois tipos de credenciais: credenciais de canal e credenciais de chamada.[5] CodificaçãoO gRPC usa buffers de protocolo para codificar dados. Ao contrário das APIs REST com JSON, elas têm uma especificação mais rígida. Por ter uma única especificação, o gRPC elimina o debate e economiza tempo do desenvolvedor porque o gRPC é consistente em todas as plataformas e implementações.[6] AdoçãoVárias organizações diferentes adotaram o gRPC, como Uber,[7] Square, Netflix, IBM, CoreOS, Docker, CockroachDB, Cisco, Juniper Networks, Spotify,[8] Zalando[9] e Dropbox.[10] O projeto de código aberto u-bmc usa gRPC para substituir o IPMI.[11] Em 8 de janeiro de 2019, o Dropbox anunciou que a próxima versão do "Courier", sua estrutura RPC no centro de sua arquitetura orientada a serviços (SOA), seria migrada para ser baseada em gRPC, principalmente porque se alinhava bem com seus Estruturas RPC. Referências
|
Portal di Ensiklopedia Dunia