Server

InfrastructureTier 1 · hear it this weekPhase 1 · Put a page on the internet

A computer that is always on and always connected, whose job is to answer requests from other computers.

Your product has to be reachable at three in the morning by someone you have never met, and the data everyone shares cannot sit on any single user's phone. A server exists to be that always-available machine: it stays powered and connected so it can receive requests and hand back answers around the clock. It is where the shared data and the real rules live, which is also why running out of server capacity during a spike takes the whole product down at once.

Your page has to live somewhere that is reachable at any hour. A server is that machine. When someone visits tiffinbox.com, their browser contacts this server and it hands back the page.

A server is not special hardware. It is an ordinary computer running software that listens for requests and responds. What makes it a server is the job, not the box.

A junior PM, stuck

Ops posted that the server has been at 90% memory since the promo went live, and everyone reacted like it was obvious what that meant. I nodded along. I realize I do not actually know what the server is doing all night, or why memory creeping up is the thing to watch.

A server is just a computer that never turns off, sitting there answering requests one after another, including at 3am when nobody is watching. The clearest way to see what it does is its own log. Here are fourteen lines from the TiffinBox server, from the moment it booted through this morning's promo. Read the boot line, then watch what climbs.

TiffinBox server log, overnight into Friday 08:00
2026-03-06T02:00:04ZINFOserver listening on :443
2026-03-06T02:00:04ZINFOserver ready, memory 22%
2026-03-06T02:40:10ZINFOserver idle, 0 requests in last 10m
2026-03-06T03:07:15ZINFOcheckout POST /api/orders received user=u_88231 item=p_1042
2026-03-06T03:07:15ZINFOcheckout order created o_5507 in 42ms
2026-03-06T03:40:00ZINFOserver idle, memory 24%
2026-03-06T07:30:02ZINFOserver traffic rising, memory 41%
2026-03-06T08:00:00ZINFOserver breakfast promo live
2026-03-06T08:02:30ZINFOserver memory 68%
2026-03-06T08:05:44ZINFOserver memory 83%
2026-03-06T08:07:12ZWARNserver memory 90%, warning threshold
2026-03-06T08:12:00ZWARNserver memory 90%, requests still served
2026-03-06T08:14:20ZINFOserver garbage collection freed memory to 76%
2026-03-06T08:20:00ZINFOserver memory 79%, holding

Click a step to see the lines it points at.

Hearing "90% memory" as a status update rather than a warning. 90% means the headroom for the next spike is almost gone, and the Friday lunch peak is a far bigger load than this breakfast promo.
Assuming the server rests when traffic is low. The 03:07 line proves it answered an order in 42ms with nobody watching; a server is defined by being always available, not by being busy.
Blaming the code for a resource problem. Nothing in the code changed overnight; the promo brought load. The fix is capacity, not a bug ticket.
Skimming past the WARN lines. The server says it is fine (INFO) or nervous (WARN) in the level field, so the WARN lines are the only ones asking for attention, and they are the easiest to miss.

Reply to ops: "Reading the overnight log, memory sat around 22% all night and climbed to the 90% warning within minutes of the 08:00 promo, so this is a capacity headroom problem, not the code. Do we have enough room for the lunch peak, which is a bigger spike than breakfast?" You read a server's log as what it is, an always-on machine, and spotted the resource climbing toward its limit.

Everything you ship runs on servers that someone pays for and maintains. "Server cost" and "server capacity" appear in planning for the rest of your career.
When traffic spikes and things slow down, the server is often what ran out of room.

"The server's been at 90% memory since the promo went live."

Appears in Phase 1, Put a page on the internet.