Skip to main content

Ultimate Go: Software Design with Kubernetes 2.0

22h 32m 42s
English
Paid

Course description

This course will teach you how to develop advanced services in Go using Domain Driven Design and Data Oriented Architecture approaches, with deployment in Kubernetes. From the very beginning, you will be programming alongside instructor Bill Kennedy, learning step by step the design philosophy, architectural decisions, and best practices applicable to creating an operational-ready service in Go.

With the addition of each new feature, you will also learn how to deploy and manage the Kubernetes environment where your service runs. All the code created during the course is published in a separate repository for your personal access and further study.

Watch Online

This is a demo lesson (10:00 remaining)

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

View Pricing
0:00
/
#1: 1.1 Design Philosophy, Guidelines, What to Expect

All Course Lessons (55)

#Lesson TitleDurationAccess
1
1.1 Design Philosophy, Guidelines, What to Expect Demo
09:52
2
1.2 Tooling and Images to Install
10:44
3
2.1 Project Layers, Policies, and Guidelines
21:35
4
2.2 Prepare Project
06:04
5
2.3 Build Service with Logging
24:00
6
3.1 Clusters, Nodes, Pods
13:13
7
3.2 Start the Kubernetes Cluster
09:23
8
3.3 Create/Build Dockerfile for the Service
16:28
9
3.4 Create/Apply K8s Deployment for the Service
27:00
10
4.1 Understanding the Go Scheduler
20:04
11
4.2 Understanding CPU Quotas
12:01
12
4.3 Adding Quotas and Adjusting GOMAXPROCS
15:27
13
5.1 Configuration
24:04
14
5.2 Debugging / Metrics
22:40
15
5.3 Shutdown Signaling and Load Shedding
09:42
16
6.1 Basic Structure of an HTTP Router
21:47
17
6.2 Liveness and Readiness Handlers
11:13
18
6.3 Customize the Router
22:21
19
6.4 Middleware Support
07:50
20
6.5 Sending Responses
04:32
21
7.1 Logging
31:57
22
7.2 Error Handling
44:44
23
7.3 Panic Handling
14:53
24
7.4 Metrics
28:24
25
8.1 Understanding JWT
19:47
26
8.2 Private/Public Key Generation
09:04
27
8.3 Token Generation
15:11
28
8.4 Token Signature Validation with OPA
26:57
29
9.1 Key Store Package
09:39
30
10.1 Auth Package
45:07
31
10.2 Auth Unit Test
27:55
32
10.3 Add Middleware
35:43
33
10.4 Auth Service
50:55
34
10.5 Auth Client
51:10
35
11.1 Architecture Review
33:05
36
11.2 Data Flow Trust vs Non-Trust
15:42
37
12.1 Kubernetes Support for Postgres
16:58
38
12.2 Create Database Package
16:33
39
12.3 Update Readiness Handler to Perform DB Checks
33:28
40
13.1 Maintaining Database Schemas and Seeds
15:42
41
13.2 Admin Tooling and Init Containers to Automate Migrations
11:01
42
13.3 Code Cleanup and Changes
01:24:56
43
14.1 User Business Domain Support
01:06:00
44
14.2 User Storage Domain Support
27:44
45
14.3 User App Domain Support
01:03:03
46
14.4 User API Domain Support
27:43
47
15.1 Starting and Stopping Containers
16:33
48
15.2 Database Testing Support
15:37
49
15.3 Unit and API Testing Support
23:51
50
15.4 Write User Business Test
21:44
51
15.5 Write User API Tests
26:24
52
16.1 Delegate System
15:26
53
16.2 Transaction System
55:52
54
17.1 Integrate OTEL into the Project
19:21
55
18.1 Check For Dependency Upgrades, Rebuild, Run
24:33

Unlock unlimited learning

Get instant access to all 54 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

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
Amazon EKS Starter: Docker on AWS EKS with Kubernetes

Amazon EKS Starter: Docker on AWS EKS with Kubernetes

Sources: udemy
Setting up and maintaining Kubernetes yourself on any cloud provider is painful... but now with Amazon EKS, the management of the Kubernetes control
5 hours 30 minutes 7 seconds
Redis Internals

Redis Internals

Sources: Arpit Bhayani
This is a self-paced course in which you will study the internal workings of Redis by re-implementing its key features in Golang. Together we will...
9 hours 6 minutes 41 seconds
How to develop a productive HTTP client in Golang (Go)

How to develop a productive HTTP client in Golang (Go)

Sources: udemy
Have you ever called a REST API from your Go program? Did you implemented your own HTTP client or did you ended up using some of the thousand libraries out there? Do you know wh...
9 hours 44 minutes 29 seconds
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