Ultimate Service 3.0

13h 33m 5s
English
Paid

Course description

This updated course teaches you how to build production-level services in Go, leveraging the power of Kubernetes.

Read more about the course

From the beginning of the course, you will pair-program with your instructor Bill Kennedy as he walks you through the design philosophies, architectural decisions, and best practices as they apply to engineering a production-ready Go service.

With each new feature that is added to the service, you will learn how to deploy and manage the Kubernetes environment used to run the service. Throughout the class, the code being worked on is pushed to a repository for personal access and review.

This class teaches how to build production-level services in Go with a focus on macro-level engineering decisions. From the beginning you will pair program with the instructor, walking through the design philosophies and guidelines used to engineer the code.

Watch Online

This is a demo lesson (10:00 remaining)

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

View Pricing

Watch Online Ultimate Service 3.0

0:00
/
#1: 1.0 Intro

All Course Lessons (80)

#Lesson TitleDurationAccess
1
1.0 Intro Demo
00:31
2
1.1: Design Philosophy, Guidelines, What to Expect
02:36
3
1.2: Tooling to Install
04:54
4
2.0 Intro
00:49
5
2.1: Adding Dependencies
23:28
6
2.2: Module Mirrors
19:23
7
2.3: Checksum Database
05:18
8
2.4: Vendoring
05:28
9
2.5: MVS Algorithm
18:15
10
3.0 Intro
00:51
11
3.1: Tooling Installation
05:15
12
3.2: Understanding Clusters, Nodes and Pods
10:07
13
3.3: Write Basic Service for Testing
07:57
14
3.4.1: Docker Images
10:34
15
3.4.2: Kind Configuration
05:47
16
3.4.3: Core K8s Configuration
16:37
17
3.4.4: K8s Quotas / Patching
18:33
18
4.0 Intro
00:55
19
4.1: Project Layers, Policies, and Guidelines
18:14
20
4.2: Prepare Project
19:08
21
4.3: Logging Support
17:04
22
4.4: Configuration Support
21:33
23
4.5: Debugging / Metrics Support
22:28
24
4.6: Shutdown Signaling and Load Shedding
11:01
25
5.0 Intro
00:36
26
5.1: Basic Structure of an HTTP Router
11:26
27
5.2: Add a Readiness, Liveness and Test Handler
23:59
28
6.0 Intro
00:48
29
6.1: Custom Router
17:59
30
6.2: Custom Handler Function
12:31
31
6.3: Middleware Support
09:02
32
6.4: Sending Responses
05:11
33
7.0 Intro
01:01
34
7.1: Logging
13:56
35
7.2: Request Context
15:44
36
7.3.1: Understanding what Error Handling Means
04:54
37
7.3.2: Declaring Custom Error Types
16:48
38
7.3.3: Consistent Handling and Response
13:08
39
7.4: Panic Handling
09:06
40
7.5: Metrics
18:21
41
8.0 Intro
00:39
42
8.1: Understanding JWT
09:02
43
8.2: Private/Public Key Generation
12:16
44
8.3: Token Generation
21:21
45
8.4: Token Signature Validation
07:26
46
9.0 Intro
00:45
47
9.1: Auth Package
11:02
48
9.2: Implementation of an In-Memory Key Store
08:33
49
9.3: Middleware
13:52
50
9.4: Auth Unit Test
19:31
51
10.0 Intro
00:46
52
10.1: Kubernetes Support for Postgres
10:14
53
10.2: Using Sqlx
20:58
54
10.3: Update Readiness Handler to Perform DB Checks
05:49
55
11.0 Intro
00:46
56
11.1: Maintaining Database Schemas
16:03
57
11.2: Seeding Data
05:18
58
11.3: Init Containers
09:53
59
12.0 Intro
00:58
60
12.1: Design Philosophies, Policies, and Guidelines
11:46
61
12.2: User Data Models and API Precision
18:16
62
12.3: Data Model Validation
07:49
63
12.4: User CRUD Data Business Package APIs
26:34
64
12.5: User Core Business Package APIs
07:40
65
13.0 Intro
00:45
66
13.1: Support for Starting and Stopping Containers
13:56
67
13.2: Support for Starting and Stopping a Unit Test
10:36
68
13.3: Write User CRUD Data Unit Tests
11:50
69
14.0 Intro
00:44
70
14.1: Writing User Web Handlers
16:08
71
14.2: Support for Starting and Stopping an Integration Test
04:07
72
14.3: Write Integration Tests for Users
10:40
73
15.0 Intro
00:45
74
15.1: Integrate OTEL Web Handler into the Framework
11:43
75
15.2: Integrate OTEL into Service Startup
09:08
76
15.3: Add Zipkin into POD
10:51
77
15.4: Add Tracing Calls Inside Functions to Trace
08:30
78
16.0 Intro
00:37
79
16.1: Check For Dependcy Upgrades
07:00
80
16.2: Rebuild and Run the Project
07:12

Unlock unlimited learning

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

Let's Build a Go version of Laravel

Let's Build a Go version of Laravel

Sources: udemy
Laravel is one of the most popular web web application frameworks in the PHP world, and with good reason. It's easy to use, well designed, and lets developers w
19 hours 22 minutes 16 seconds
Design Patterns in Go

Design Patterns in Go

Sources: udemy
This course provides an overview of all the Gang of Four (GoF) design patterns as outlined in their seminal book, together with modern-day variations, adjustments, discussions o...
9 hours 47 minutes 37 seconds
Go Bootcamp: Master Golang with 1000+ Exercises and Projects

Go Bootcamp: Master Golang with 1000+ Exercises and Projects

Sources: udemy
Deeply understand and master the Go Programming Language (Golang) from scratch 1000+ hands-on exercises and projects.
15 hours 27 minutes 7 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
Master Microservices with Java, Spring, Docker, Kubernetes

Master Microservices with Java, Spring, Docker, Kubernetes

Sources: udemy
'Master Microservices with Spring, Docker, Kubernetes' course will help in understanding about microservices architecture and how to build it using SpringBoot
23 hours 57 minutes 28 seconds