gRPC è un framework di comunicazione open-source sviluppato da Google che utilizza il protocollo HTTP/2 per la trasmissione dei dati. Permette una comunicazione efficiente e performante tra servizi distribuiti, utilizzando il formato di serializzazione Protobuf. Questo processo offre un modo potente per migliorare la comunicazione tra servizi grazie al protocollo HTTP/2, ottimizzando l'efficienza delle risorse di rete. Nel mondo App Service di Microsoft Azure possiamo utilizzare questa tecnologia in Linux ma il supporto su Windows è una novità recente che richiede pochi passi per poter ospitare i nostri servizi sulla piattaforma cloud di Microsoft.
Come al solito creiamo la nostra web app su Azure scegliendo il runtime e Windows o Linux come sistema operativo. Successivamente, dobbiamo configurare alcune impostazioni cruciali. Nella sezione Impostazioni della nostra web app, selezioniamo Configurazione, quindi nella scheda Impostazioni generali, impostiamo la versione HTTP su 2.0 e salviamo. Questo consente al front-end di gestire chiamate HTTP/2. Nella stessa sezione delle impostazioni della piattaforma, selezioniamo gRPC Only per il proxy HTTP 2.0 (oppure On su Windows) e salviamo, assicurando che il sito riceva richieste HTTP/2.
Nelle impostazioni della piattaforma, attiviamo la crittografia TLS end-to-end per garantire la sicurezza delle comunicazioni.
Fatto questo il nostro servizio può accettare richieste gRPC anche se presenta alcune limitazioni che dobbiamo tenere in considerazione: funziona solo in modalità in-process e non è ancora supportato nei container.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare una qualunque lista per i parametri di tipo params in C#
Eseguire una query su SQL Azure tramite un workflow di GitHub
Proteggere le risorse Azure con private link e private endpoints
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Introduzione alle Container Queries
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Recuperare App Service cancellati su Azure
Sostituire la GitHub Action di login su private registry
Utilizzare QuickGrid di Blazor con Entity Framework
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary