serversim
LearnSimulatorTemplatesPricing
…
…
Open menu
Learn↗Simulator↗Templates↗Pricing↗
My DocumentsDocs

LEARN · 8 FOUNDATIONS → 16 EXECUTION LESSONS · FREE

Understand execution models. Do not memorize them.

New to the subject? Begin with 8 foundation lessons on bits, the CPU and waiting through everyday analogies. If you know CPU and memory basics, go straight to 16 lessons comparing thread pools, event loops and coroutines.

Start with foundationsStart execution models

Foundations: no prerequisites; explain why requests queue up.

Execution models: build on CPU and memory basics to compare concurrency trade-offs.

Both public courses include English and Korean text.

After foundations: execution models

From CPU to Coroutines

FREE
  1. 01CPU & memory↓
  2. 02Waiting↓
  3. 03Thread pools↓
  4. 04Event loop↓
  5. 05Coroutines↓
  6. 06Measured comparison
16lessons
113minutes
A/Bmeasured
16Execution lessons
113mExecution course time
77Sim scenarios
$0Core path

New here? Start here

8 chapters · about 40 min

Why does a busy server fall behind? The 8-chapter foundation

No computer science background needed. Start at ones and zeros, end at a queue of customers at a bank counter — one trap question per chapter.

  1. 01How do ones and zeros become letters?A computer only knows ones and zeros — so where do the letters on your screen come from?4min
  2. 02What does a CPU actually do?People say a CPU "does the math" — but how many different things can it actually do?5min
  3. 03Does double the GHz really mean double the speed?Swap a 3GHz chip for a 6GHz one — does your server really get twice as fast?4min
  4. 04Why is one fetch instant and another slow?Both are just "fetch some data" — so why does one take 0.000001 seconds and the other 0.1?5min
  5. 05Can a computer do something else while it waits?If the counter has to stand empty while a customer fetches paperwork from the vault, how do you ever serve more of them?5min
  6. 06Why does a busy server fall behind?The counter is not even full yet — so why are customers already waiting a long time in line?6min
  7. 07Two hundred windows — why are only ten working?You opened two hundred places to take a request — so why did throughput not rise to match?5min
  8. 08When does an event loop win, and when does it lose?If handling many jobs from few seats always wins, why do plenty of servers still run hundreds of seats?6min
Start with chapter 1 Already comfortable? Go to the 16 execution-model lessons →

FREE CORE COURSE

From CPU to Coroutines

A beginner-friendly main course that explains why each execution model had to exist. Every lesson and measured comparison is open.

  • All 16 lessons
  • Deterministic animations and measurements
  • English and Korean text
  • Hands-on simulator links
Start the free course

All 16 lessons

Each lesson begins with the limitation left by the one before it.

01 — 16
  1. 01What a computer is made ofCPU · memory · devices · the OS — "the CPU is always running someone's code"
  2. 02How a line of code runsFetch–decode–execute · memory and addresses · registers and PC · stack and heap
  3. 03Stack and heap — what goes whereLocals on the stack, objects on the heap · what dies with the function and what does not
  4. 04Why memory fills up — and GCAllocation · reachability · mark and sweep · pauses and retention
  5. 05Processes — the first way to share a CPUProgram vs process · address spaces and isolation · the illusion of time-sharing
  6. 06When does the CPU rest — interrupts and context switchesKernel mode · saving and restoring context · yielding vs preemption · idle
  7. 07Discovering the wait — IO idles the CPUHow slow devices are · what blocking means · waiting still costs memory
  8. 08Threads — born because processes were heavyWhat is shared and what is not · three states · the price of sharing
  9. 09Concurrency ≠ parallelismTwo different words · CPU-bound vs IO-bound · when threads do not help
  10. 10Server method ① — the thread poolOne thread per request · why a pool · size and cost
  11. 11Server method ② — the event loopThe C10K answer · register and return · help from the kernel
  12. 12Coroutines / async-await — callbacks in sync clothingCallback hell · suspend and resume · same execution as chapter 11
  13. 13Trap ① — one CPU-bound task freezes the loopA preempting pool vs a non-preempting loop
  14. 14Trap ② — a blocking call on the loopOne blocking line halts the whole server
  15. 15How we got here — sixty years of evolutionBatch → processes → threads → C10K → event loops → coroutines → virtual threads
  16. 16Same work, four methodsMakespan · switches · memory · CPU busy, in numbers

PRO DEPTH COURSE · EARLY ACCESS

Follow the mechanism below the conclusion.

The Pro path traces Java code through the JVM, kernel, scheduler, and CPU. Each lab asks one concrete question: who decided the next state, and what did that decision cost?

Course production7 / 20
Ready now7
Full production path20

We do not present an unfinished course as complete. Ready labs and the production sequence are shown together.

Labs available now

7 READY
  1. 2.1.1How a CPU executes one instruction
  2. 2.1.2How one core runs several programs
  3. 2.1.3CPU preemption and the hardware timer
  4. 2.1.4Why processes evolved into threads
  5. 2.1.5The real memory layout of multithreading
  6. 2.8.1~3Sockets, thread-per-connection, and event loops
  7. 2.8.4~6I/O multiplexing, NIO, Selector, and epoll
In production next

Thread creation cost and thread pools

Then

Shared memory and safety → callbacks and async/await → Reactor → JVM, Tomcat, Spring, and Netty

Pro

The current lessons and narration are in Korean. An English track is planned.

Explore the Pro course Compare Free and Pro

LEARN → RUN → EXPLAIN

A course that does not stop at reading

A lesson is complete when you can create the same bottleneck and explain its numbers, not when you reach the bottom of a page.

01 · LEARN

See the mechanism move

Follow CPU turns, queues, and wait states as each decision changes them.

02 · RUN

Create the same behavior

Change scenarios and knobs, then watch p99, throughput, and drops respond.

03 · EXPLAIN

Explain the result by cause

Name the saturated resource and the tradeoff that produced the outcome.

New here? Begin with 8 foundation lessons.

From bits to waiting requests, without payment or sign-in.

Start with foundations
serversim

Learn why servers slow down and fail, then reproduce the same mechanism in a simulator.

© 2025-2026 serversim · Architecture simulation tool

Product

  • Learn
  • Simulator
  • Templates
  • Pricing

Resources

  • Docs
  • Benchmarks
  • Blog

Legal

  • Privacy
  • Terms
  • Refund