grpc 101 for spring developers
TRANSCRIPT
![Page 1: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/1.jpg)
gRPC Microservices 101
Ray Tsang@saturnism
Bret McGowen@bretmcg
![Page 2: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/2.jpg)
@saturnism @bretmcg @grpcio #s1p
Who are we?
Ray Tsang / @saturnismDeveloper Advocate, Google Cloud Platform
● New York, NY● Loves to travel● Post food on Instagram!
Bret McGowen / @bretmcgDeveloper Advocate, Google Cloud Platform
● New York, NY● Love to sleep● Read memes on Instagram
![Page 3: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/3.jpg)
@saturnism @bretmcg @grpcio #s1p
A B
C D
![Page 4: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/4.jpg)
@saturnism @bretmcg @grpcio #s1p
A B
CD
![Page 5: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/5.jpg)
@saturnism @bretmcg @grpcio #s1p
A B
CD
![Page 6: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/6.jpg)
@saturnism @bretmcg @grpcio #s1p
A B
CDHow?
![Page 7: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/7.jpg)
@saturnism @bretmcg @grpcio #s1p
RPC? Sounds Familiar?
Distributed systems, service oriented… sounds familiar?
Remember CORBA? DCOM? RMI? SOAP?
I found this the Hello World the other day...
![Page 8: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/8.jpg)
@saturnism @bretmcg @grpcio #s1p
Why RPC?
Efficient, Strongly Typed
Operations not expressible by REST
Can be great if simple and interoperable
![Page 9: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/9.jpg)
@saturnism @bretmcg @grpcio #s1p
At Google, we use Stubby
O(1010) RPC per second
![Page 10: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/10.jpg)
@saturnism @bretmcg @grpcio #s1p
At Google, we use Stubby
10,000,000,000 RPC per second
![Page 11: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/11.jpg)
@saturnism @bretmcg @grpcio #s1p
simple & idiomatic
performant & scalable
interoperable & extensiblegRPC Remote Procedure Call framework
![Page 12: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/12.jpg)
@saturnism @bretmcg @grpcio #s1p
IDL
HTTP/2
Protobuffer 3gRPC Remote Procedure Call framework
![Page 13: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/13.jpg)
@saturnism @bretmcg @grpcio #s1p
HTTP/2HTTP/1.1
http://www.http2demo.io/
![Page 14: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/14.jpg)
@saturnism @bretmcg @grpcio #s1p
gRPC Remote Procedure Call framework
Binary Protocol
![Page 15: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/15.jpg)
@saturnism @bretmcg @grpcio #s1p
gRPC Remote Procedure Call framework
Binary Protocol
![Page 16: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/16.jpg)
@saturnism @bretmcg @grpcio #s1p
Languages
gRPC Remote Procedure Call framework
C++, Objective-CPHP, Python, Ruby
Node.js, Go, C#, Java
![Page 17: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/17.jpg)
@saturnism @bretmcg @grpcio #s1p
Languages
gRPC Remote Procedure Call framework
C++, Objective-CPHP, Python, Ruby
Node.js, Go, C#, Java
![Page 18: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/18.jpg)
Google Cloud Platform 18
Live coding?
![Page 19: gRPC 101 for Spring Developers](https://reader030.vdocuments.mx/reader030/viewer/2022021422/586f78861a28ab10258b6c43/html5/thumbnails/19.jpg)
Thank YouRay Tsang@saturnism
Bret McGowen@bretmcg
Resources grpc.io
github.com/LogNet/grpc-spring-boot-starterkubernetes.io
Our Kubernetes talk: bit.ly/spring-k8sGoogle Cloud Platform: cloud.google.com