- Lessons
- 9 modules
- 41
- Video duration
- 32 videos
- 7h 9m
- Download
- 8 files
- 232.2 KB
- Quizzes
- 0
Build a Google Analytics in Go
Description
Build a basic Google Analytics-like application using Go, TypeScript, PostgreSQL, Docker, and ClickHouse.
Additional details
This course assumes you've taken my Build SaaS apps in Go course or are familiar with Go's standard library for building web applications.
We cover the following aspects:
- The client-side tracker.
- The Go backend API.
- Geo-localization from an IP address.
- Storing the data into PostgreSQL.
- Using Docker to improve your developer's life.
- Generating traffic and testing the performance of our system.
- Optimizing the DB, table, and queries.
- Using ClickHouse to handle 100x the volume of our database.
- Building a CLI dashboard.
- Deploying our approach to a VM.
Lessons in this course
All lessons are available after your purchase.
- Introduction
-
-
1. Course intro 3 minsrequire purchase
-
2. What you need 0 mins read timerequire purchase
-
- The JS tracker
-
-
1. What we need 9 minsrequire purchase
-
2. Setup project 11 minsrequire purchase
-
3. Tracker class 16 minsrequire purchase
-
4. Track page views 13 minsrequire purchase
-
5. Handle missing data 16 minsrequire purchase
-
6. Code 41.7 KBrequire purchase
-
- Go server API
-
-
1. API design 3 minsrequire purchase
-
2. Track handler 10 minsrequire purchase
-
3. Decode data 15 minsrequire purchase
-
4. Data structure 20 minsrequire purchase
-
5. Use Docker to test 28 minsrequire purchase
-
6. Code 57.5 KBrequire purchase
-
- Get geo info
-
-
1. Architecture design 3 minsrequire purchase
-
2. Run the project 16 minsrequire purchase
-
3. Call from API 12 minsrequire purchase
-
4. Code 17.8 KBrequire purchase
-
- Generate traffic
-
-
1. Fill database 4 minsrequire purchase
-
2. Generate 15M rows 14 minsrequire purchase
-
3. Import the data 15 minsrequire purchase
-
4. Code 2.2 KBrequire purchase
-
- Improve performance
-
-
1. The problem 14 minsrequire purchase
-
2. Let's normalize 16 minsrequire purchase
-
3. This sucks! 10 minsrequire purchase
-
4. ClickHouse? 10 minsrequire purchase
-
5. Is it faster than PG? 12 minsrequire purchase
-
6. Code 486 bytesrequire purchase
-
- Refactor API for ClickHouse
-
-
1. Swap PG for ClickHouse 14 minsrequire purchase
-
2. Queue and batch inserts 27 minsrequire purchase
-
3. Adding referrer domain 3 minsrequire purchase
-
4. Code 66.2 KBrequire purchase
-
- CLI dashboard
-
-
1. Proof of concept 18 minsrequire purchase
-
2. Refactor and display metrics 19 minsrequire purchase
-
3. Dashboard v1 27 minsrequire purchase
-
4. Code 26.0 KBrequire purchase
-
- Deployment
-
-
1. Add configuration 11 minsrequire purchase
-
2. API authentication 9 minsrequire purchase
-
3. Servers config / setup 23 minsrequire purchase
-
4. Dashboard config 8 minsrequire purchase
-
5. Code 20.3 KBrequire purchase
-