gRPC [Golang] Master Class: Build Modern API & Microservices

gRPC [Golang] Master Class: Build Modern API & Microservices

English | MP4 | AVC 1920×1080 | AAC 44KHz 2ch | 5h 34m | 1.99 GB

Better than REST API! Build a fast scalable HTTP/2 API for a Golang micro service with gRPC, Protocol Buffers (protobuf)

gRPC is a new and modern framework for building scalable, modern and fast API. It is leveraged by many top tech companies such as Google, Square & Netflix and enables programmers to write micro-services in any language they want while keeping the ability to easily create communications between these services. It relies on Protocol Buffers for the transport mechanism and Service Definition language.

In this course, we are going to explore in depth, with hands-on lectures, all the aspects to get started with gRPC.

This course is hands-on and you will implement two services: Greet and a Calculator Service.

In just a few hours, you will know everything you need to know to write your .proto files, generate code in your Favourite Programming, and implement your services, servers and client in Golang. There will be plenty of hands-on lectures and exercises for you to practice your newly acquired skills.

It’s time to say goodbye to slow and clunky REST API, and opt-in for a better API framework.

gRPC Golang Master Class 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 REST API paradigm
  • Write your gRPC service definition in .proto files
  • Generate Server & Client Code in Golang using the Gradle gRPC plugin
  • Implement Unary, Server Streaming, Client Streaming & Bi-Directional Streaming API
  • Practice your learning with Exercises & Solutions
  • Implement advanced concepts such as Error Handling, Deadlines & 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

Note: This course expects you have some preliminary knowledge about Protocol Buffers and Golang.

Stephane Maarek is the instructor of this course. He is the author of highly successful courses such as Apache Kafka Series and AWS Series. He is passionate about micro-services and data. He has already taught to 40000+ students and received 12000+ reviews.

He shares all his Data knowledge on the platform, taking the time to explain every concept and provide students with both theoretical and practical dimensions. You are in good hands!

Section outline:

  • gRPC Course Overview: Get an understand of the course objectives, how the course is structured, download the course code and get ready!
  • [Theory] gRPC Internals Deep Dive: Learn how gRPC works behind the scenes. Learn about HTTP/2, Protocol Buffers efficiencies, and
  • the differences of gRPC and REST.
  • [Hands-On] gRPC Project Overview & Setup: Setup your project using Gradle and learn how to trigger code generation
  • [Hands-On] gRPC Unary: API description & implementation
  • [Hands-On] gRPC Server Streaming: API description & implementation
  • [Hands-On] gRPC Client Streaming: API description & implementation
  • [Hands-On] gRPC Bi-Directional Streaming: API description & implementation
  • [Hands-On] gRPC Advanced Features Deep Dive: Advanced features such as Error Handling, Deadlines, SSL Security.
  • Next Steps: Some useful real-world links & where to take your learning from here

What you’ll learn

  • Learn the gRPC theory to understand how gRPC works
  • Compare gRPC and REST API paradigm
  • Write your gRPC service definition in .proto files
  • Generate Server & Client Code in Golang using the protoc gRPC Plugin
  • Implement Unary, Server Streaming, Client Streaming & Bi-Directional Streaming API
  • Practice your learning with Exercises & Solutions
  • Implement advanced concepts such as Error Handling, Deadlines & 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
Table of Contents

gRPC Course Overview
1 gRPC Introduction
2 Course Objective
3 About your instructor
4 Important Message

Code Download
5 Code Download

[Theory] gRPC Internals Deep Dive
6 Protocol Buffers & Language Interoperability
7 HTTP2
8 Types of gRPC APIs
9 Scalability in gRPC
10 Security in gRPC (SSL)
11 gRPC vs REST
12 Section Summary – why use gRPC
13 Why this section

[Hands-On] gRPC Project Overview & Setup
14 Go Dependencies Setup
15 Code Generation Test
16 Server Setup Boilerplate Code
17 Client Setup Boilerplate Code
18 Project Setup (Golang + VSCode + Protoc)

[Hands-On] gRPC Unary
19 What’s an Unary API
20 Greet API Definition
21 Unary API Server Implementation
22 Unary API Client Implementation
23 [Solution] Sum API
24 [Exercise] Sum API

[Hands-On] gRPC Server Streaming
25 What’s a Server Streaming API
26 GreetManyTimes API Definition
27 Server Streaming API Server Implementation
28 Server Streaming API Client Implementation
29 [Solution] PrimeNumberDecomposition API
30 [Exercise] PrimeNumberDecomposition API

[Hands-On] gRPC Client Streaming
31 What’s a Client Streaming API
32 LongGreet API Definition
33 Client Streaming API Server Implementation
34 Client Streaming API Client Implementation
35 [Solution] ComputeAverage API
36 [Exercise] ComputeAverage API

[Hands-On] gRPC Bi-Directional Streaming
37 What’s a Bi-Directional Streaming API
38 GreetEveryone API Definition
39 Bi-Directional Streaming API Server Implementation
40 Bi-Directional Streaming API Client Implementation
41 [Solution] FindMaximum API
42 [Exercise] FindMaximum API

[Hands-On] gRPC Advanced Features Deep Dive
43 [Theory] Errors in gRPC
44 [Hands-On] Errors implementation
45 [Theory] Deadlines
46 [Hands-On] Deadlines
47 [Theory] SSL Security
48 [Hands-On] SSL Security
49 [Demo] Language Interoperability
50 gRPC Reflection & Evans CLI

[Hands-On] CRUD API with MongoDB
51 Install MongoDB
52 Install MongoDB UI – Robo 3T
53 Blog Service Golang Setup
54 MongoDB Driver Golang Setup
55 CreateBlog Server
56 CreateBlog Client
57 ReadBlog Server
58 ReadBlog Client
59 UpdateBlog Server
60 UpdateBlog Client
61 DeleteBlog Server
62 DeleteBlog Client
63 ListBlog Server
64 ListBlog Client
65 Evans CLI test with CRUD
66 Code Changes
67 Install MongoDB – Windows Instructions

Next Steps
68 gRPC Services in the Real Word
69 Congrats & Next Steps
70 THANK YOU!
71 Bonus Lecture Student Special Coupons for my Other courses
72 What about Gogo

Homepage