Alan Zhan Blog

Live for nothing, or die for something

MongoDB Sorted Operation OOM

This is a rare case where I learned by working backward from a problem — I’d better document it well. Recently, our production environment hit a MongoDB sort operation limit with this specific …

Kubernetes Core Component: etcd

In any system, what is the most important thing? The answer is simple: data. So I’m starting my deep dive with Kubernetes’ database — etcd! What is etcd? etcd is a distributed key-value …

Installing Kubernetes with Kubeadm - Twice

To better understand K8s through hands-on practice, I wanted to set up a K8s cluster myself. There are increasingly many ways to self-host K8s nowadays — minikube, Kubeadm, and more. I decided to go …

Kubernetes Fundamentals

It’s finally time to dive deep into Kubernetes. Since Kubernetes is built with Go, I’ve already done some in-depth research on Go beforehand. I won’t be covering Docker and container …

Golang Memory Management and GC In-Depth Analysis

A new year has arrived! After completing the analysis of Golang Goroutine and GMP Model In-Depth Analysis, I gained a much more comprehensive understanding of the Go language. But after learning about …

Golang Goroutine and GMP Model In-Depth Analysis

I’ve been studying Kubernetes recently, so I need to become good friends with the Go language. While reading, I came across goroutines, but couldn’t fully understand where they came from …

10 Dockerfile Best Practices

I was recently organizing Docker knowledge for myself and came across Dockerfile best practices. I planned to summarize them, but then I found that the official documentation already has best …

GitHub Pages Custom Domain Setup

I recently switched my domain name, so I decided to take some notes to help everyone easily set up their own GitHub Pages custom domain. Step 1: Purchase a Domain First, purchase the domain name you …

Interpolation Search Algorithm

Continuing with the number guessing game — for numbers 1 to 100, if you already know the result, using binary search might not be the most efficient approach. So what method should we use instead? …

Jump Search Algorithm

Continuing with the number guessing game — can we try a different approach for numbers 1 to 100? If we start from the beginning and jump forward by 10 each time we don’t guess correctly, we keep …