grpc 101 for spring developers

19
gRPC Microservices 101 Ray Tsang @saturnism Bret McGowen @bretmcg

Upload: spring-io

Post on 06-Jan-2017

2.069 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: gRPC 101 for Spring Developers

gRPC Microservices 101

Ray Tsang@saturnism

Bret McGowen@bretmcg

Page 2: gRPC 101 for Spring Developers

@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

@saturnism @bretmcg @grpcio #s1p

A B

C D

Page 4: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

A B

CD

Page 5: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

A B

CD

Page 6: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

A B

CDHow?

Page 7: gRPC 101 for Spring Developers

@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

@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

@saturnism @bretmcg @grpcio #s1p

At Google, we use Stubby

O(1010) RPC per second

Page 10: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

At Google, we use Stubby

10,000,000,000 RPC per second

Page 11: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

simple & idiomatic

performant & scalable

interoperable & extensiblegRPC Remote Procedure Call framework

Page 12: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

IDL

HTTP/2

Protobuffer 3gRPC Remote Procedure Call framework

Page 13: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

HTTP/2HTTP/1.1

http://www.http2demo.io/

Page 14: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

gRPC Remote Procedure Call framework

Binary Protocol

Page 15: gRPC 101 for Spring Developers

@saturnism @bretmcg @grpcio #s1p

gRPC Remote Procedure Call framework

Binary Protocol

Page 16: gRPC 101 for Spring Developers

@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

@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

Google Cloud Platform 18

Live coding?

Page 19: gRPC 101 for Spring Developers

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