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.
Building Production-Ready Services with gRPC and Go
Additional
About the Author: ByteSizeGo
ByteSizeGo is a Go-focused course platform run by Aaron Lee, focused on the production / debugging side of Go engineering rather than language tour material. The platform's distinctive contribution is the Foundations of Debugging series, which teaches the systematic skill of debugging Go services in production rather than relying on ad-hoc print statements.
The CourseFlix listing carries six ByteSizeGo courses: Foundations of Debugging for Golang, The Ultimate Guide to Debugging With Go, The Anatomy of Go, Building Production-Ready Services with gRPC and Go, AI Engineering with Go, and The Art of Command Line Interfaces. Material is paid and aimed at working Go developers ready to deepen the operational side of their craft.
Watch Online 49 lessons
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Welcome! Demo | 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 |
Get instant access to all 48 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionCourse content
49 lessons · 11h 23m 33sShow all 49 lessons
- 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
Related courses
-

Weekly LIVE sessions
By: Anthony GGA playlist of weekly LIVE session recordings for those who couldn't attend live or want to revisit the material.7 hours 31 minutes 22 seconds 5 / 5 -

Web Development with Go v2 (Current Version)
By: useGolang (Jon Calhoun)Learn to build real, production-grade web applications from scratch. No trivial TODO apps that barely touch the complexity of a real app. No frameworks that hid40 hours 28 minutes 36 seconds 0 / 5 -

The Art of Command Line Interfaces
By: ByteSizeGo, Marian MontagninoMaster the creation of high-quality CLI applications in Go. Video course by Marian, bestselling author and expert in command-line interface programming.5 hours 51 minutes 42 seconds