Building Production-Ready Services with gRPC and Go

11h 23m 33s
English
Paid

Course description

The course "Building Production-Ready Services with gRPC and Go" covers the development of high-performance services using gRPC and the Go language. It includes 56 lessons and is aimed at both beginner and experienced developers. The course explores topics such as building gRPC services, data streaming, authentication, SSL/TLS, interceptors, load balancing, and testing. The course also includes exercises and demonstrates how to deploy services in Kubernetes.

Watch Online

Join premium to watch
Go to premium
# Title Duration
1 Welcome! 00:42
2 What are Protocol Buffers and What are the Benefits? 09:21
3 What is gRPC? 07:15
4 Types of gRPC APIs 01:55
5 Protoc Tool & Generating Code 08:09
6 Defining a gRPC Service Contract 05:26
7 Implementing a Server 10:23
8 Implementing a Client 05:17
9 Error Handling 07:06
10 Exercise Solution 18:02
11 Running a Server Correctly 10:23
12 Implementing Server Streaming 13:26
13 Implementing Client Streaming 13:58
14 Implementing Bi-Directional Streaming 14:11
15 Exercise Solution 18:10
16 What is SSL/TLS? 06:32
17 Implementing Server-side TLS in gRPC 11:01
18 Implementing mTLS in gRPC 10:45
19 Exercise Solution 08:52
20 Interceptors - Introduction, Client Interceptors, Server Interceptors 17:06
21 Setting Deadlines/Timeouts 07:38
22 CallOptions & Metadata 13:36
23 API key Authorization via Interceptors 32:05
24 Auth via CallCredentials 10:20
25 Exercise Solution 25:43
26 Client Service Config & Timeouts 11:13
27 Automatic Client Retries 13:30
28 Introduction to Client-Side Load Balancing 03:29
29 Round Robin Load Balancing 15:46
30 Creating a Custom Load Balancing Policy 25:05
31 Making gRPC Requests via Postman 05:35
32 Making gRPC Requests via gRPCurl 11:43
33 Creating Unit Tests for RPCs - Part 1 (Unary) 30:14
34 Creating Unit Tests for RPCs - Part 2 (Streaming) 34:42
35 Creating Integration/End-to-End Tests for gRPC Services - Part 1 (Unary) 27:17
36 Creating Integration/End-to-End Tests for gRPC Services - Part 2 (Streaming) 19:37
37 Exercise Solution 25:52
38 What is Docker & Containerising Go Services 10:49
39 What is Kubernetes & What do I Need to do to Deploy There? 19:44
40 TLS & Automatic Certificate Renewal Using LetsEncrypt 22:59
41 Exposing a gRPC Service Part 1 - via LoadBalancer Service 07:10
42 Exposing a gRPC Service Part 2 - via Ingress 10:15
43 Exposing a gRPC Service Part 3 - via Cloudflare Tunnel 18:39
44 Challenges with Maintaining Protobuf at Scale & What is Buf? 08:01
45 Example Protobuf Registry Walkthrough 06:02
46 ConnectRPC - Server & Client implementation in Go 22:00
47 ConnectRPC - Client implementation for Web 17:00
48 Buf Schema Registry, Dependencies & Protovalidate 15:47
49 Exercise Solution 13:42

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Build Your Own Database in Go From Scratch

Build Your Own Database in Go From Scratch

Sources: James Smith
Learn databases from scratch, creating your own, in small steps and with simple code in Go (language-neutral). Atomicity and durability. The database...
Working with Microservices in Go (Golang)

Working with Microservices in Go (Golang)

Sources: udemy
For a long time, web applications were usually a single application that handled everything—in other words, a monolithic application. This monolith handled user authentication, ...
10 hours 51 minutes 24 seconds
Backend Engineering with Go

Backend Engineering with Go

Sources: udemy
In this practice-oriented course, we will build a full-fledged REST API in Go from scratch and deploy it in the cloud, ready for real traffic and scaling...
17 hours 6 minutes 22 seconds
Master Go

Master Go

Sources: appliedgo.com (Christoph Berger)
A few years ago, I discovered Go and immediately fell in love with this language. I loved how the incredibly clean design of the language, as well as the awesome toolchain, sudd...
6 hours 32 minutes 20 seconds