Microservices with gRPC [Java + Spring Boot + Protobuf]
What you'll learn
- Complete gRPC from scratch
- 10X Performance
- Spring Boot Integration
- Inter microservice communication
- Unary, Client Streaming, Server Streaming & Bi Directional Streaming API
- Load Balancing
- Protocol Buffers / Protobuf
- SSL / TLS
- Metadata / Context / CallOptions
- Knowledge on Java 8 or above
- Comfortable with Indian Accent
gRPC is one of the hottest technologies in the recent years from Google for designing highly performant and scalable APIs for your Microservices. By using gRPC, you can have 10X performance compared to traditional REST based microservices communication. It is very very fast!
It allows us to choose different types of APIs depending on our use case which is not possible with REST. One of the biggest challenge in Microservices design is inter-services communication. Most of the developers use REST as it is general-purpose. But It has a lot of challenges. We would be learning how to solve the common problems with REST by using gRPC.
By the end of this course, You would be comfortable with,
Microservices development with gRPC
gRPC & all the RPC types
Client Streaming API
Server Streaming API
Bidirectional Streaming API
Snake & Ladder Game development using Bidirectional Streaming
Protocol Buffers / Protobuf from scratch
Google's language neutral & platform neutral for serializing/desrializing structured data.
gRPC uses HTTP2 - with the persistent connection to the back end. There are challenges in balancing the load. This section talks in details about them.
How to pass the user session token
How to pass the client service token
Error handling via Metadata
Error handling via Protobuf OneOf
Error Handling via exception
Spring Boot Integration
How to use gRPC in a Spring Boot Microservice
Developing multiple services & Integration
Who this course is for:
- Any Developer / Architect who is interested in Microservice Development / Architecture
Vinoth has been working as a Principal Engineer and he is an AWS certified solution architect associate & Certified Kubernetes Application Developer.
He has a passion for software development, Microservice Architecture, framework creation, setting up best practices, test automation, creating custom tools for team’s productivity / process improvement, devops etc.
Huge fan of JVM technologies, Spring, NodeJS, Docker, Kubernetes etc.