IBM Cloud Docs
gRPC supporto del protocollo

gRPC supporto del protocollo

gRPC ( gRPC Remote Procedure Call) è un framework open source che consente alle applicazioni di comunicare in modo efficiente e affidabile. Consente di creare API compatte e ad alte prestazioni che riducono l'utilizzo della larghezza di banda, la latenza e supportano la comunicazione scalabile da servizio a servizio.

gRPC caratteristiche

  • Modello client-server: gRPC utilizza un'architettura client-server in cui il client invia una richiesta al server, che la elabora e restituisce una risposta. Questo modello supporta una comunicazione efficiente tra i servizi e semplifica l'integrazione tra i sistemi distribuiti.

  • Buffer di protocollo (Protobuf): gRPC utilizza i buffer di protocollo (protobuf) come linguaggio di definizione dell'interfaccia (IDL). Protobuf fornisce un meccanismo neutro dal punto di vista del linguaggio e della piattaforma per la serializzazione dei dati strutturati, consentendo contratti fortemente tipizzati tra client e server e migliorando l'efficienza della trasmissione dei dati.

  • HTTP/2: gRPC viene eseguito su HTTP/2, che fornisce multiplexing (richieste multiple su una singola connessione), trasferimento di dati binari, compressione delle intestazioni e supporto integrato per lo streaming. Lo streaming consente a client e server di inviare o ricevere dati in modo continuo senza aprire più connessioni, supportando sia grandi insiemi di dati che comunicazioni in tempo reale.

  • Multipiattaforma e multilingue: gRPC supporta diversi linguaggi di programmazione, come Java, C++, Python, Go, Ruby, Node.js, e molti altri. Questa versatilità lo rende ideale per costruire sistemi in cui i servizi sono scritti in lingue diverse.

CIS supporta il protocollo gRPC per qualsiasi endpoint proxy gRPC. Per attivare o disattivare il supporto gRPC, passare alla sezione Affidabilità, selezionare la scheda Avanzate e attivare l'interruttore gRPC.

Prima di abilitare il supporto di gRPC, assicurarsi che l'endpoint soddisfi i seguenti requisiti:

  • L'endpoint gRPC deve ascoltare sulla porta 443 e supportare TLS e HTTP/2.
  • HTTP/2 devono essere pubblicizzati tramite Application-Layer Protocol Negotiation (ALPN).
  • gRPC le richieste devono utilizzare l'intestazione content-type application/grpc o application/grpc+<message type>.