Skip to main content

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

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 49 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing

Watch Online Building Production-Ready Services with gRPC and Go

0:00
/
#1: Welcome!

All Course Lessons (49)

#Lesson TitleDurationAccess
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

Unlock unlimited learning

Get instant access to all 48 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

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
Writing A Compiler In Go

Writing A Compiler In Go

Sources: Thorsten Ball
This is the sequel to Writing An Interpreter In Go. We're picking up right where we left off and write a compiler and a virtual machine for Monkey. Runnable and tested code fron...
Foundations of Debugging for Golang

Foundations of Debugging for Golang

Sources: ByteSizeGo, Matt Boyle
Debugging is the most important skill that most people are never taught. Being able to debug locally and in production is a critical skill for any Go...
Web hook service application over SSH

Web hook service application over SSH

Sources: Anthony GG
Let's create a terminal application and a server that generate a unique link to be used as a webhook URL and directly forward responses to...
3 hours 16 minutes 6 seconds