Skip to main content
CourseFlix

Complete Microservices with Go

18h 31m 16s
English
Paid

Learn how real microservices work in Go. You build a small ride‑sharing app step by step. You use Go, Docker, and Kubernetes to design, build, and run each service.

You also work through a short advanced Go module. It gives you the tools you need to follow the project, even if you are still growing your Go skills.

By the end, you deploy a scalable ride‑sharing app. You also get a clean service template that you can reuse in your own projects.

The system uses several services that run under Kubernetes. Users can pick a route, set a rate, and book a driver from a shared pool.

What You Learn

You learn how to design and build backend systems with many services. You follow clear steps that show how to use common tools and patterns. You ship a setup that is stable, fast, and easy to update.

Key Skills

  • Plan services and set clear roles for each one.
  • Write clean and testable Go code.
  • Build and run services with Docker.
  • Deploy services on Kubernetes.
  • Use logs, metrics, and traces to debug issues.

How the Course Helps You

This course does more than walk you through steps. It helps you think like a backend engineer. You face real problems and learn simple ways to solve them with proven tools.

What You Gain

  • A clear workflow for building microservices.
  • Practice with real service boundaries and data flow.
  • Hands‑on skill with Docker and Kubernetes.
  • Experience making services that are safe to deploy and easy to fix.

About the Author: udemy

udemy thumbnail

Udemy is a global online marketplace for teaching and learning. It connects students with instructors who share skills in many fields.

Who Uses Udemy

Millions of learners use Udemy to gain skills for work and personal growth. Companies, governments, and nonprofits also use Udemy to train their teams.

What Udemy Offers

Udemy provides a curated set of business and technical courses. These courses help teams build practical skills and support ongoing learning at work.

Watch Online 90 lessons

This is a demo lesson (10:00 remaining)

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

View Pricing
0:00
/
#1: Introduction
All Course Lessons (90)
#Lesson TitleDurationAccess
1
Introduction Demo
01:53
2
Project Overview
04:14
3
Tech Stack Overview
06:22
4
Coming from a Monolith
12:21
5
Microservices Guiding Design Principles
13:35
6
Communication Styles
15:23
7
Architecture Definition Process
11:24
8
Effective Error Handling
15:29
9
Interfaces
16:17
10
Testing
06:18
11
Pointers
12:16
12
Goroutines
10:14
13
Context and Timeouts
13:30
14
Concurrency with Channels
13:21
15
Maps
06:21
16
Map Concurrency & Mutexes
12:07
17
Windows Users Setup
12:06
18
Mac/Linux Setup
07:35
19
Structuring a Microservice project
12:11
20
Theory: Clean Architecture & Repository Pattern
09:31
21
Part 1: Layered Architecture
07:54
22
Part 2: Repository Pattern
23:23
23
Why Kubernetes and Tilt
09:31
24
Role of the API Gateway
07:24
25
Implementing an HTTP Server
25:09
26
External API communication (OSRM)
20:15
27
Preparing for External API Failures
02:57
28
Gracefull shutdown
14:44
29
Understanding WebSockets
09:10
30
Implementing WebSocket connections
22:29
31
Handling CORS
16:08
32
gRPC Introduction
08:54
33
Protocol Buffer file generation process
05:31
34
Defining the Trip Proto
15:49
35
Implementing the Gateway Trip gRPC Client
16:55
36
gRPC Server implementation on Trip Service
12:22
37
Preview Trip Handler - Part #1
12:44
38
Preview Trip Handler - Part #2
20:49
39
Why & What are Ride Fares
05:56
40
Ride Pricing Estimation
32:51
41
Implementing the TripStart gRPC handler
21:31
42
Introduction to Kubernetes
06:15
43
Kubernetes Under the Hood
14:12
44
Kubernetes Components
16:38
45
Creating Deployment Files
22:57
46
Doing our first production deployment
19:29
47
Bootstrapping the Service
16:22
48
Small Tiltfile Compilation Fix
01:21
49
Final Adjustments to the Route
03:10
50
Introduction to Async communication
12:33
51
Setting up RabbitMQ
11:48
52
Connecting to RabbitMQ
13:06
53
RabbitMQ Services Dependency
03:32
54
Publishing the First Message
21:54
55
Message Durability
08:01
56
Consuming Messages
11:34
57
Message Distribution & Acknowledgment
14:57
58
Fair Dispatch
06:12
59
The Pub/Sub Pattern
17:11
60
Implementing the Exchange & Topics flow
21:19
61
JSON Message Sending & Consuming
13:20
62
Finding a Suitable Driver
18:04
63
Understanding how to notify our users
06:40
64
WebSocket Connection Manager
08:52
65
Queue Consumer
14:11
66
Handling incoming messages from the driver
11:02
67
Listening for Trip Accept event
26:39
68
Declining a Trip Request
04:31
69
Payment Flow Overview
04:44
70
Payment Service setup
05:46
71
Adding the Stripe secret key
06:15
72
Stripe Processor Implementation
18:45
73
Listening to the Payment Event
14:57
74
Stripe Payment Webhook
20:17
75
Intro to Distributed Tracing
09:33
76
Setting up Tracing
13:54
77
Jeager Exporter
13:13
78
HTTP Instrumentation
13:57
79
gRPC Instrumentation
11:36
80
RabbitMQ Instrumentation
14:57
81
Understanding DLQ and Retries
07:30
82
Implementing Message Retries
13:04
83
Implementing DLQ and DLX
10:25
84
Introduction to MongoDB
10:25
85
MongoDB Connection
14:23
86
MongoDB Repository
07:25
87
Adding BSON to the Domain Structs
03:42
88
Dockerizing our project for production
10:19
89
Kubernetes Cluster Deployment
14:08
90
Port Forwarding
01:17
Unlock unlimited learning

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

Learn more about subscription