Kacam.net

Interview drills

RDB、AOF 和主从复制

「有持久化也有主从,所以不会丢」—— 那主库挂掉那一刻呢?

Copy the prompt, then pick a model. It plays the interviewer and asks you through it scene by scene instead of handing you the answer.

On a phone with the app installed, the system opens the app directly. Links cannot open external apps inside WeChat — open it in a browser first.

The copied text ends with the answer key the model grades you against. Don't read it yourself first — working it out on your own is the point.

两种持久化各自的机制是第一层。第二幕追的是它们各自的那一刻:生成快照的时候进程在干什么、为什么会抖;日志那条的刷盘策略,每一档最多丢多少。

第三幕逼数字:多大的实例、那一下抖多久、每秒写多少的时候差多少。

第四幕落到主从:复制是同步的还是异步的,因此切换的那一刻会发生什么。这一问答得含糊的人,通常也没处理过真实的故障切换。

★★★★☆ · about 40 min · Tests: 快照那一刻的抖动、刷盘策略最多丢多少、复制的时序、切换时丢什么

What this one leans on

Durability Consistency and isolation

Have you done this one?

Sign in to mark this one as practised — next time you come back you'll see when you did it.

Notes from people who did this one

Nobody has written yet. After you run it, say what came out of the conversation — which scene stumped you, which conclusion you changed afterwards.

Sign in to write a note.

How to use this

This set interrogates rather than teaches. It is a mock interview: running out of answers is a normal outcome, and it will not cover for you or finish your sentence when you trail off. If you want to understand a topic rather than rehearse for an interview, go to Computer systems, Databases or Algorithms — those guide you instead.

How one stock question fills forty minutes: the five-layer ladder

  • L1 · Definition — what each term means, list the differences. Can't answer: you never learned it.
  • L2 · Mechanism — which structure, which step actually produces that difference. Can't answer: you memorised the conclusion only.
  • L3 · Numbers — by how much? How many microseconds, how many times, how many I/Os. Can't answer: you've never done it hands-on.
  • L4 · Choice — given a concrete scenario, which one, at what cost, and when is that choice wrong. Can't answer: you can't apply it.
  • L5 · Limits — under what conditions does everything you just said stop holding. Can't answer: you know it all, but you don't really understand it.

The bar: L4 is what passes an interview, L5 is what counts as really understanding it, and anything that stops at L1 is recorded as memorised.

Six scenes — the first and last are unique to this set

  • In scene one it does not interrupt, comment or hint. You deliver the version you already have, start to finish, and it records that as your baseline. The silence is deliberate — it is listening, it just isn't correcting you yet.
  • The middle four scenes work down the ladder; scene three, mechanism and numbers, is the main battleground.
  • The last scene puts sixty seconds on the clock and makes you deliver it again, side by side with your opening version — because what an interview asks you to hand over isn't "I understand it", it's a sentence you can actually say out loud.

How to start

  1. Pick one, open it, copy the prompt.
  2. Paste it into a brand-new conversation, say nothing, and wait for its first question.
  3. Then answer like you would in an interview: deliver your memorised version in one go. It's fine if it's rough — that's the baseline it compares against at the end.
  4. After that it starts pressing. Running out of answers is a normal outcome: this isn't study material, it's a mock interview.

Five commands you can call out at any time

  • 跳过 move to the next scene now
  • 提示 give me a hint, not the answer
  • 直说吧 spell the full answer out
  • 重讲 jump straight to the last scene, re-record the sixty-second version and compare it with the opening one
  • 复盘 jump to the wrap-up and print the review card

Three traps

  • The prompt you copy has the answer key at the end — don't read it first. One of its columns is the "recital fingerprints": the exact sentences you're most likely to blurt out. Read them and there's nothing left to drill.
  • Don't hand over adjectives where a number belongs. "Much faster", "barely any overhead" — it stops you and asks for the figure. A conclusion you can't put an order of magnitude on is recorded as memorised.
  • The last two groups are language-bound: do the Java group if you write Java, the Go group if you write Go. They are not translations of each other — each picks its own questions — so there's no need to do both.

Interviewing for a backend role next week? Take process versus thread, TCP versus UDP, why B+ trees, isolation levels, the three cache failure modes, and idempotency — the six most frequent, with almost no overlap. Been hammered in interviews and want to find the gaps? Start with "from URL to rendered page": it exposes every weak spot horizontally, and you can pick your next ones from what it turns up.