Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. gRPC - Teknopedia
gRPC - Teknopedia

gRPC (gRPC Remote Procedure Calls[1]) è un framework multipiattaforma ad alte prestazioni per chiamate di procedura remota (RPC).

gRPC venne inizialmente creato da Google, ma è open source e viene utilizzato in molte organizzazioni. I casi d'uso spaziano dai microservizi all'"ultimo miglio" dell'informatica (dispositivi mobili, web e Internet delle cose). gRPC utilizza HTTP/2 per il trasporto, Protocol Buffers come linguaggio di descrizione dell'interfaccia (IDL) e fornisce funzionalità quali autenticazione, streaming bidirezionale e controllo del flusso, associazioni bloccanti o non bloccanti, annullamento e timeout. Genera associazioni tra client e server multipiattaforma per molti linguaggi. Gli scenari di utilizzo più comuni includono la connessione di servizi in un'architettura in stile microservizi o la connessione di client di dispositivi mobili a servizi backend.[2]

L'utilizzo di HTTP/2 da parte di gRPC è considerato complesso. Rende impossibile implementare un client gRPC nel browser, richiedendo invece un proxy.[3]

Storia

[modifica | modifica wikitesto]

A partire dal 2001 circa, Google ha creato un'infrastruttura RPC di uso generale chiamata Stubby per connettere il gran numero di microservizi in esecuzione all'interno e tra i suoi centri elaborazione dati.[4] Nel marzo 2015, Google ha deciso di realizzare la versione successiva di Stubby e di renderla open source. Il risultato è stato gRPC.

Autenticazione

[modifica | modifica wikitesto]

gRPC supporta l'utilizzo del protocollo crittografico Transport Layer Security (TLS) e l'autenticazione basata su token. La connessione ai servizi Google deve utilizzare TLS. Esistono due tipi di credenziali: credenziali di canale e credenziali di chiamata.

Per l'autorizzazione basata su token, gRPC fornisce un Server Interceptor[5] e un Client Interceptor.[6]

Codifica

[modifica | modifica wikitesto]

gRPC utilizza i Protocol Buffers per codificare i dati. I buffer di protocollo forniscono un formato di serializzazione e un linguaggio di definizione dell'interfaccia (IDL).[7]

Testing

[modifica | modifica wikitesto]

Alcuni degli strumenti software utilizzati per testare le implementazioni gRPC includono Postman, ezy,[8] Insomnia e Step CI.[9]

Adozione

[modifica | modifica wikitesto]

Molte organizzazioni utilizzano gRPC, tra cui Uber,[10] Square, Netflix, IBM, CoreOS, Docker, CockroachDB, Arista Networks, Cisco, Juniper Networks,[11] Spotify,[12] Zalando,[13] Dropbox,[14] e Google come sviluppatore originale.

Il progetto open source u-bmc utilizza gRPC per sostituire l'Intelligent Platform Management Interface (IPMI).[15] L'8 gennaio 2019, Dropbox ha annunciato che la prossima versione di "Courier", il loro framework RPC al centro della loro architettura orientata ai servizi (SOA), sarebbe stata migrata per essere basata su gRPC, principalmente perché si allineava bene con i loro framework RPC personalizzati esistenti.[16]

Note

[modifica | modifica wikitesto]
  1. ↑ gRPC, https://grpc.io/docs/what-is-grpc/faq/ Titolo mancante per url url (aiuto).
  2. ↑ (EN) gRPC, https://grpc.io/about/ Titolo mancante per url url (aiuto). URL consultato il 25 maggio 2021.
  3. ↑ (EN) gRPC, https://grpc.io/blog/state-of-grpc-web/ Titolo mancante per url url (aiuto).
  4. ↑ cloud.google.com, https://cloud.google.com/blog/products/gcp/grpc-a-true-internet-scale-rpc-framework-is-now-1-and-ready-for-production-deployments Titolo mancante per url url (aiuto). URL consultato il 3 aprile 2023.
  5. ↑ thecodedata.com, https://thecodedata.com/grpc-interceptors-with-java/ Titolo mancante per url url (aiuto).
  6. ↑ grpc.io, https://grpc.io/docs/guides/auth/ Titolo mancante per url url (aiuto). URL consultato il 24 febbraio 2020.
  7. ↑ (EN) docs.microsoft.com, https://docs.microsoft.com/en-us/aspnet/core/grpc/comparison Titolo mancante per url url (aiuto). URL consultato il 24 febbraio 2020.
  8. ↑ github.com, https://github.com/getezy/ezy Titolo mancante per url url (aiuto).
  9. ↑ docs.stepci.com, https://docs.stepci.com/guides/testing-grpc.html Titolo mancante per url url (aiuto).
  10. ↑ eng.uber.com, https://eng.uber.com/architecture-api-gateway/ Titolo mancante per url url (aiuto).
  11. ↑ grpc.io, https://grpc.io/faq/#who-s-using-this-and-why Titolo mancante per url url (aiuto). URL consultato il 24 febbraio 2020.
  12. ↑ jfokus.se, https://www.jfokus.se/jfokus19-preso/Adopting-gRPC-at-Spotify.pdf Titolo mancante per url url (aiuto). URL consultato il 12 maggio 2020.
  13. ↑ opensource.zalando.com, https://opensource.zalando.com/tech-radar/ Titolo mancante per url url (aiuto). URL consultato l'8 aprile 2021.
  14. ↑ Dropbox.Tech, https://dropbox.tech/infrastructure/how-we-migrated-dropbox-from-nginx-to-envoy Titolo mancante per url url (aiuto). URL consultato il 30 ottobre 2020.
  15. ↑ GitHub.com, https://github.com/u-root/u-bmc Titolo mancante per url url (aiuto).
  16. ↑ Nigmatullin, Ruslan, blogs.dropbox.com, https://blogs.dropbox.com/tech/2019/01/courier-dropbox-migration-to-grpc/ Titolo mancante per url url (aiuto). URL consultato il 9 gennaio 2019.

Voci correlate

[modifica | modifica wikitesto]
  • Cap'n Proto
  • Apache Thrift
  • Apache Avro
  • JSON-RPC
  • XML-RPC

Collegamenti esterni

[modifica | modifica wikitesto]
  • (EN) Sito ufficiale, su grpc.io. Modifica su Wikidata
  • (EN) GRPC, su GitHub. Modifica su Wikidata
  • Repository sorgenti di GRPC, su github.com. Modifica su Wikidata
  • Repository sorgenti di GRPC, su github.com. Modifica su Wikidata
  • gRPC – opensource.google.com, su opensource.google.com.
V · D · M
Google
AziendaAlphabet Inc. · Storia · Acquisizioni · Prodotti · Critiche (Problemi di privacy) · Censura · Controversie · Don't be evil
Proprietà immobiliari111 Eighth Avenue · Chelsea Market · Googleplex · Centri dati
PubblicitàAdMob · Adscape · Ads · Ad Manager · AdSense · Analytics · Contributor · Mediabot · Google My Business · Partners
EventiCode-in · Code Jam · Developer Day · I/O · Science Fair · Summer of Code
PersoneAl Gore · Alan Eustace · Alan Mulally · Amit Singhal · Ann Mather · David Drummond · Eric Schmidt · Jeff Dean · John Doerr · John L. Hennessy · Krishna Bharat · Matt Cutts · Patrick Pichette · Paul Otellini · Omid Kordestani · Rachel Whetstone · Rajen Sheth · Ram Shriram · Raymond Kurzweil · Ruth Porat · Salar Kamangar · Sanjay Ghemawat · Shirley M. Tilghman · Sundar Pichai · Susan Wojcicki · Urs Hölzle · Vint Cerf · Hal Varian
TerminiGayglers · Google Developer Expert
FondatoriLarry Page · Sergey Brin
FontNoto · Roboto · Product Sans
Prodotti
SoftwareAssistente Google · Fotocamera · Lens · Goggles · Chrome (per Android · Web Store) · Cloud Print · Earth · Gadgets · Gboard · IME (giapponese · Pinyin) · Pay (Pay Send) · Foto · Keep · News · Now · OpenRefine · Snapseed · Waze
Sistemi operativiAndroid (versioni · sviluppo · Android Automotive · Android TV · Wear OS) · Chrome OS · Fuchsia
Linguaggi di programmazioneDart · Go · Sawzall
FrameworkAngular · AngularJS · API di AJAX · Dialogflow · Flutter · gRPC · Guava · Guice · TensorFlow
ComunicazioneAlert · Apps Script · Duo · Calendar · Contatti · Gmail · Gruppi · Hangouts · Messaggi · Sync · Sintesi vocali · Traduttore · Traslitterazione · Voice
PiattaformeAccount · Authenticator · Android Auto · ZygoteBody · Cast · Cloud Platform (App Engine · BigQuery · Bigtable · Compute Engine · Storage) · Fit · GFS · Workspace (Classroom · Marketplace) · Native Client · OpenSocial · Pay (Send) · Primer · Play (Giochi · Libri) · Public DNS · Safe Browsing · Stadia · Tango · TV · YouTube Music · YouTube TV
SviluppoApp Inventor · Caja · Closure Tools · Developers · Firebase · GData · KML · Kythe · MapReduce · Owlchemy Labs · Sitemaps · Web Toolkit · Search Console · Website Optimizer · Swiffy
PublishingAMP · Blogger · Bookmarks · Domains · Drive (Disegni · Documenti · Fogli · Moduli · Presentazioni · Tabelle) · FeedBurner · Sites · My Maps · YouTube (Instant · Premium) · Vevo · Zagat
RicercaBlog Search · Libri (Ngram Viewer) · Motore di ricerca personalizzato · Dataset Search · Dizionario · Finanza · Voli · Googlebot · Immagini · Maps (Street View) · News (Archive) · Patents · Public Data · Scholar · Shopping · Tenor · Usenet · Videos
AlgoritmiPageRank · Panda · Penguin · Hummingbird
FunzioniPersonalized · SafeSearch · Voice Search
AnalisiInsights for Search · Trends · Knowledge Graph and Vault
HardwareGlass · Home · Jamboard · Wifi · OnHub
Realtà virtualeCardboard · Daydream
NestNest Learning Thermostat · Nest
Dispositivi mobiliNexus · Pixel
ChromeChromebit · Chromecast · Chromebook · Chromebox
Altro.google · Arts & Culture · ATAP · Chrome Zone · Data Transfer Project · Dragonfly · Current · Chrome Experiments · Google Business Groups · Made with Code · Data Liberation · Takeout · Google Developer Expert · Google (verbo) · Google China · Google Express · Googlization · Grants · Google.org · Logo e correlati (Doodle4Google · Google Doodle) · Lunar X Prize · Google Fi · Google Station · Material Design · Motorola Mobility · Nest Labs · reCAPTCHA · Sunroof · WiFi · AI Challenge · Easter eggs · elgooG
CorrelatoGoogle bombing · Goojje · Monopoly City Streets · Unity
DocumentariGoogle: Behind the Screen · Google: The Thinking Factory · Google and the World Brain
  Portale Google
  Portale Informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=GRPC&oldid=147739111"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022