Cademy logoCademy Marketplace

Course Images

gRPC [Java] Master Class: Build Modern API and Microservices

gRPC [Java] Master Class: Build Modern API and Microservices

🔥 Limited Time Offer 🔥

Get a 10% discount on your first order when you use this promo code at checkout: MAY24BAN3X

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 5 hours 4 minutes

  • All levels

Description

Better than REST APIs! Build a fast and scalable HTTP/2 API for your microservice with gRPC and protocol buffers (protobufs).

RPC is a new and modern framework for building scalable, modern, and fast APIs. It is leveraged by many top tech companies such as Google, Square, and Netflix and enables programmers to write microservices in any language they want while keeping the ability to easily communicate between these services. It relies on protocol buffers as the transport mechanism and the Service Definition Language. gRPC [Java] Master Class: Build Modern APIs and Microservices is the best way to get a great overview of all the possibilities offered by gRPC with your favourite language • Learn the gRPC theory to understand how gRPC works • Compare gRPC and the REST API paradigm • Write your gRPC service definitions in .proto files • Generate server and client code in Java using the Gradle gRPC plugin • Implement unary, server streaming, client streaming, and the bi-directional streaming API • Learn via exercises and solutions • Implement advanced concepts such as error handling, deadlines, and SSL security • Implement a full CRUD API on top of MongoDB • Get pointers to expand your learning journey and get inspired by real-world gRPC services All the code files are placed at https://github.com/PacktPublishing/gRPC-Java-Master-Class-Build-Modern-API-and-Microservices

What You Will Learn

Generate server and client code in Java using the Gradle gRPC plugin
Implement unary, server streaming, client streaming, and the bi-directional streaming API
Practice your learning with exercises & solutions
Implement advanced concepts such as error handling, deadlines, and SSL security
Implement a full CRUD API on top of MongoDB
Get pointers to expand your learning journey and get inspired by real-world gRPC services.

Audience

Developers who want to understand how to write gRPC services and clients in Java and architects who want to understand how gRPC works and the concepts behind the different types of API.

Approach

This course will teach you gRPC in depth, via practical examples.

Key Features

Learn the gRPC theory to understand how gRPC works * Compare gRPC and the REST API paradigm * Write your gRPC service definition in .proto files

Github Repo

https://github.com/packtpublishing/grpc-java-master-class-build-modern-api-and-microservices

About the Author

Stéphane Maarek

Stéphane Maarek is a solutions architect, consultant, and software developer who has a particular interest in all things related to big data and analytics. He is also a bestseller instructor on Udemy for his courses on Apache Kafka, Apache NiFi, and AWS Lambda. He loves Apache Kafka and regularly contributes to the Apache Kafka project. Stéphane has also written a guest blog post that was featured on the Confluent website, the company behind Apache Kafka. He is also an AWS Certified Solutions Architect and has many years of experience with technologies such as Apache Kafka, Apache NiFi, Apache Spark, Hadoop, PostgreSQL, Tableau, Spotfire, Docker, Ansible, and more.

Course Outline

1. gRPC Course Overview

Video 1.1: gRPC Introduction

1. gRPC Introduction

gRPC Course Overview: gRPC Introduction

2. Course Objective

gRPC Course Overview: Course Objective


2. [Theory] gRPC Internals Deep Dive

Video 2.1: Protocol Buffers & Language Interoperability

1. Protocol Buffers & Language Interoperability

[Theory] gRPC Internals Deep Dive: Protocol Buffers & Language Interoperability

2. HTTP/2

[Theory] gRPC Internals Deep Dive: HTTP/2

3. 4 Types of gRPC APIs

[Theory] gRPC Internals Deep Dive: 4 Types of gRPC APIs

4. Scalability in gRPC

[Theory] gRPC Internals Deep Dive: Scalability in gRPC

5. Security in gRPC (SSL)

[Theory] gRPC Internals Deep Dive: Security in gRPC (SSL)

6. gRPC vs REST

[Theory] gRPC Internals Deep Dive: gRPC vs REST

7. Section Summary - why use gRPC

[Theory] gRPC Internals Deep Dive: Section Summary - why use gRPC


3. [Hands-On] gRPC Project Overview & Setup

Video 3.1: Java Gradle Project Setup

1. Java Gradle Project Setup

[Hands-On] gRPC Project Overview & Setup: Java Gradle Project Setup

2. Dummy Service Code Generation

[Hands-On] gRPC Project Overview & Setup: Dummy Service Code Generation

3. Server Setup Boilerplate Code

[Hands-On] gRPC Project Overview & Setup: Server Setup Boilerplate Code

4. Client Setup Boilerplate Code

[Hands-On] gRPC Project Overview & Setup: Client Setup Boilerplate Code


4. [Hands-On] gRPC Unary

Video 4.1: What's a Unary API?

1. What's a Unary API?

[Hands-On] gRPC Unary: What's a Unary API?

2. Greet API Definition

[Hands-On] gRPC Unary: Greet API Definition

3. Unary API Server Implementation

[Hands-On] gRPC Unary: Unary API Server Implementation

4. Unary API Client Implementation

[Hands-On] gRPC Unary: Unary API Client Implementation

5. [Solution] Sum API

[Hands-On] gRPC Unary: [Solution] Sum API


5. [Hands-On] gRPC Server Streaming

Video 5.1: What's a Server Streaming API?

1. What's a Server Streaming API?

[Hands-On] gRPC Server Streaming: What's a Server Streaming API?

2. GreetManyTimes API Definition

[Hands-On] gRPC Server Streaming: GreetManyTimes API Definition

3. Server Streaming API Server Implementation

[Hands-On] gRPC Server Streaming: Server Streaming API Server Implementation

4. Server Streaming API Client Implementation

[Hands-On] gRPC Server Streaming: Server Streaming API Client Implementation

5. [Solution] PrimeNumberDecomposition API

[Hands-On] gRPC Server Streaming: [Solution] PrimeNumberDecomposition API


6. [Hands-On] gRPC Client Streaming

Video 6.1: What's a Client Streaming API?

1. What's a Client Streaming API?

[Hands-On] gRPC Client Streaming: What's a Client Streaming API?

2. LongGreet API Definition

[Hands-On] gRPC Client Streaming: LongGreet API Definition

3. Client Streaming API Server Implementation

[Hands-On] gRPC Client Streaming: Client Streaming API Server Implementation

4. Client Streaming API Client Implementation - Part 1 - Refactoring

[Hands-On] gRPC Client Streaming: Client Streaming API Client Implementation - Part 1 - Refactoring

5. Client Streaming API Client Implementation - Part 2 - Refactoring

[Hands-On] gRPC Client Streaming: Client Streaming API Client Implementation - Part 2 - Refactoring

6. [Solution] ComputeAverage API

[Hands-On] gRPC Client Streaming: [Solution] ComputeAverage API


7. [Hands-On] gRPC Bi-Directional Streaming

Video 7.1: What's a Bi-Directional Streaming API?

1. What's a Bi-Directional Streaming API?

[Hands-On] gRPC Bi-Directional Streaming: What's a Bi-Directional Streaming API?

2. GreetEveryone API Definition

[Hands-On] gRPC Bi-Directional Streaming: GreetEveryone API Definition

3. Bi-Directional Streaming API Server Implementation

[Hands-On] gRPC Bi-Directional Streaming: Bi-Directional Streaming API Server Implementation

4. Bi-Directional Streaming API Client Implementation

[Hands-On] gRPC Bi-Directional Streaming: Bi-Directional Streaming API Client Implementation

5. [Solution] FindMaximum API

[Hands-On] gRPC Bi-Directional Streaming: [Solution] FindMaximum API


8. [Hands-On] gRPC Advanced Features Deep Dive

Video 8.1: [Theory] Errors in gRPC

1. [Theory] Errors in gRPC

[Hands-On] gRPC Advanced Features Deep Dive: [Theory] Errors in gRPC

2. [Hands-On] Errors implementation

[Hands-On] gRPC Advanced Features Deep Dive: [Hands-On] Errors implementation

3. [Theory] Deadlines

[Hands-On] gRPC Advanced Features Deep Dive: [Theory] Deadlines

4. [Hands-On] Deadlines

[Hands-On] gRPC Advanced Features Deep Dive: [Hands-On] Deadlines

5. [Theory] SSL Security

[Hands-On] gRPC Advanced Features Deep Dive: [Theory] SSL Security

6. [Hands-On] SSL Security

[Hands-On] gRPC Advanced Features Deep Dive: [Hands-On] SSL Security

7. [Demo] Language Interoperability

[Hands-On] gRPC Advanced Features Deep Dive: [Demo] Language Interoperability

8. gRPC Reflection & Evans CLI

[Hands-On] gRPC Advanced Features Deep Dive: gRPC Reflection & Evans CLI


9. [Hands-On] CRUD API with MongoDB

Video 9.1: Install MongoDB

1. Install MongoDB

[Hands-On] CRUD API with MongoDB: Install MongoDB

2. Install MongoDB UI - Robo 3T

[Hands-On] CRUD API with MongoDB: Install MongoDB UI - Robo 3T

3. Blog Service Java Setup

[Hands-On] CRUD API with MongoDB: Blog Service Java Setup

4. CreateBlog Server

[Hands-On] CRUD API with MongoDB: CreateBlog Server

5. CreateBlog Client

[Hands-On] CRUD API with MongoDB: CreateBlog Client

6. ReadBlog Server

[Hands-On] CRUD API with MongoDB: ReadBlog Server

7. ReadBlog Client

[Hands-On] CRUD API with MongoDB: ReadBlog Client

8. UpdateBlog Server

[Hands-On] CRUD API with MongoDB: UpdateBlog Server

9. UpdateBlog Client

[Hands-On] CRUD API with MongoDB: UpdateBlog Client

10. DeleteBlog Server

[Hands-On] CRUD API with MongoDB: DeleteBlog Server

11. DeleteBlog Client

[Hands-On] CRUD API with MongoDB: DeleteBlog Client

12. ListBlog Server

[Hands-On] CRUD API with MongoDB: ListBlog Server

13. ListBlog Client

[Hands-On] CRUD API with MongoDB: ListBlog Client

14. Evans CLI test with CRUD

[Hands-On] CRUD API with MongoDB: Evans CLI test with CRUD


10. Next Steps

Video 10.1: gRPC Services in the Real Word

1. gRPC Services in the Real Word

Next Steps: gRPC Services in the Real Word

2. Congrats & Next Steps

Next Steps: Congrats & Next Steps

Course Content

  1. gRPC [Java] Master Class: Build Modern API and Microservices

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews