fbpx
Wikipedia

gRPC

gRPC (gRPC Remote Procedure Calls[2]) is a cross-platform open source high performance remote procedure call (RPC) framework. gRPC was initially created by Google, which used a single general-purpose RPC infrastructure called Stubby to connect the large number of microservices running within and across its data centers from about 2001.[3] In March 2015, Google decided to build the next version of Stubby and make it open source. The result was gRPC, which is now used in many organizations aside from Google to power use cases from microservices to the “last mile” of computing (mobile, web, and Internet of Things). It uses HTTP/2 for transport, Protocol Buffers as the interface description language, and provides features such as authentication, bidirectional streaming and flow control, blocking or nonblocking bindings, and cancellation and timeouts. It generates cross-platform client and server bindings for many languages. Most common usage scenarios include connecting services in a microservices style architecture, or connecting mobile device clients to backend services.[4]

gRPC
Developer(s)Google
Initial releaseAugust 2016; 7 years ago (2016-08)
Stable release
1.57.0[1] / August 9, 2023; 3 months ago (2023-08-09)
Repository
  • github.com/grpc/grpc
Written inAndroid Java, C#, C++, Dart, Go, Java, Kotlin/JVM, Node.js, Objective-C, PHP, Python, Ruby
TypeRemote procedure call framework
LicenseApache License 2.0
Websitegrpc.io

gRPC's complex use of HTTP/2 makes it impossible to implement a gRPC client in the browser, instead requiring a proxy.[5]

Authentication edit

gRPC supports the usage of Transport Layer Security (TLS) and token-based authentication. Connection to Google services must use TLS. There are two types of credentials: channel credentials and call credentials. For token-based authorization, gRPC provides Server Interceptor [6] and a Client Interceptor.[7]

Encoding edit

gRPC uses Protocol Buffers to encode data. Protocol buffers provide a serialization format and an Interface Definition Language.[8]

Testing edit

Some of the software tools used for testing gRPC implementations include Postman, ezy,[9] Insomnia, and Step CI.[10]

Adoption edit

A number of different organizations have adopted gRPC, such as Uber,[11] Square, Netflix, IBM, CoreOS, Docker, CockroachDB, Arista Networks, Cisco, Juniper Networks,[12] Spotify,[13] Zalando,[14] Dropbox,[15] and Google as the original developer.

The open source project u-bmc uses gRPC to replace Intelligent Platform Management Interface (IPMI).[16] On 8 January 2019, Dropbox announced that the next version of "Courier", their RPC framework at the core of their service-oriented architecture (SOA), would be migrated to be based on gRPC, primarily because it aligned well with their existing custom RPC frameworks.[17]

Alternatives to gRPC edit

See also edit

References edit

  1. ^ "gRPC releases". GitHub. Retrieved 2023-08-17.
  2. ^ "FAQ". gRPC.
  3. ^ "gRPC: a true internet-scale RPC framework is now 1.0 and ready for production deployments". 24 August 2016. Retrieved 2023-04-03.
  4. ^ "About gRPC". gRPC. Retrieved 2021-05-25.
  5. ^ "The state of gRPC in the browser". gRPC. 8 January 2019.
  6. ^ "gRPC Server Interceptor".
  7. ^ "gRPC". grpc.io. Retrieved 2020-02-24.
  8. ^ JamesNK. "Compare gRPC services with HTTP APIs". docs.microsoft.com. Retrieved 2020-02-24.
  9. ^ "ezy on GitHub".
  10. ^ "Step CI Documentation".
  11. ^ "gRPC at Uber". 19 May 2021.
  12. ^ "gRPC". grpc.io. Retrieved 2020-02-24.
  13. ^ "gRPC at Spotify" (PDF). jfokus.se. Retrieved 2020-05-12.
  14. ^ "Zalando Tech Radar". opensource.zalando.com. Retrieved 2021-04-08.
  15. ^ "How we migrated Dropbox from Nginx to Envoy". Dropbox.Tech. Retrieved 2020-10-30.
  16. ^ "u-bmc". GitHub.com. 5 October 2022.
  17. ^ Nigmatullin, Ruslan; Ivanov, Alexey (2019-01-08). "Courier: Dropbox migration to gRPC". Retrieved 2019-01-09.

External links edit

  • gRPC Home Page
  • gRPC – github.com
  • gRPC – opensource.google.com

grpc, remote, procedure, calls, cross, platform, open, source, high, performance, remote, procedure, call, framework, initially, created, google, which, used, single, general, purpose, infrastructure, called, stubby, connect, large, number, microservices, runn. gRPC gRPC Remote Procedure Calls 2 is a cross platform open source high performance remote procedure call RPC framework gRPC was initially created by Google which used a single general purpose RPC infrastructure called Stubby to connect the large number of microservices running within and across its data centers from about 2001 3 In March 2015 Google decided to build the next version of Stubby and make it open source The result was gRPC which is now used in many organizations aside from Google to power use cases from microservices to the last mile of computing mobile web and Internet of Things It uses HTTP 2 for transport Protocol Buffers as the interface description language and provides features such as authentication bidirectional streaming and flow control blocking or nonblocking bindings and cancellation and timeouts It generates cross platform client and server bindings for many languages Most common usage scenarios include connecting services in a microservices style architecture or connecting mobile device clients to backend services 4 gRPCDeveloper s GoogleInitial releaseAugust 2016 7 years ago 2016 08 Stable release1 57 0 1 August 9 2023 3 months ago 2023 08 09 Repositorygithub wbr com wbr grpc wbr grpcWritten inAndroid Java C C Dart Go Java Kotlin JVM Node js Objective C PHP Python RubyTypeRemote procedure call frameworkLicenseApache License 2 0Websitegrpc wbr iogRPC s complex use of HTTP 2 makes it impossible to implement a gRPC client in the browser instead requiring a proxy 5 Contents 1 Authentication 2 Encoding 3 Testing 4 Adoption 5 Alternatives to gRPC 6 See also 7 References 8 External linksAuthentication editgRPC supports the usage of Transport Layer Security TLS and token based authentication Connection to Google services must use TLS There are two types of credentials channel credentials and call credentials For token based authorization gRPC provides Server Interceptor 6 and a Client Interceptor 7 Encoding editMain article Protocol Buffers gRPC uses Protocol Buffers to encode data Protocol buffers provide a serialization format and an Interface Definition Language 8 Testing editSome of the software tools used for testing gRPC implementations include Postman ezy 9 Insomnia and Step CI 10 Adoption editA number of different organizations have adopted gRPC such as Uber 11 Square Netflix IBM CoreOS Docker CockroachDB Arista Networks Cisco Juniper Networks 12 Spotify 13 Zalando 14 Dropbox 15 and Google as the original developer The open source project u bmc uses gRPC to replace Intelligent Platform Management Interface IPMI 16 On 8 January 2019 Dropbox announced that the next version of Courier their RPC framework at the core of their service oriented architecture SOA would be migrated to be based on gRPC primarily because it aligned well with their existing custom RPC frameworks 17 Alternatives to gRPC editCap n Proto Apache Thrift Apache Avro JSON RPC XML RPCSee also edit nbsp Free and open source software portalComparison of data serialization formatsReferences edit gRPC releases GitHub Retrieved 2023 08 17 FAQ gRPC gRPC a true internet scale RPC framework is now 1 0 and ready for production deployments 24 August 2016 Retrieved 2023 04 03 About gRPC gRPC Retrieved 2021 05 25 The state of gRPC in the browser gRPC 8 January 2019 gRPC Server Interceptor gRPC grpc io Retrieved 2020 02 24 JamesNK Compare gRPC services with HTTP APIs docs microsoft com Retrieved 2020 02 24 ezy on GitHub Step CI Documentation gRPC at Uber 19 May 2021 gRPC grpc io Retrieved 2020 02 24 gRPC at Spotify PDF jfokus se Retrieved 2020 05 12 Zalando Tech Radar opensource zalando com Retrieved 2021 04 08 How we migrated Dropbox from Nginx to Envoy Dropbox Tech Retrieved 2020 10 30 u bmc GitHub com 5 October 2022 Nigmatullin Ruslan Ivanov Alexey 2019 01 08 Courier Dropbox migration to gRPC Retrieved 2019 01 09 External links editgRPC Home Page gRPC github com gRPC opensource google com Retrieved from https en wikipedia org w index php title GRPC amp oldid 1183864387, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.