Server (computing) Study Guide
Study Guide
📖 Core Concepts
Server – a program (or the machine running it) that provides data, resources, or services to client computers.
Client‑Server Model – clients send requests; servers perform actions and return responses.
Service vs. Server – service = abstract functionality (e.g., web service); server = the program or machine that offers that service.
Request–Response – classic pull model: client asks, server replies.
Publish–Subscribe – push model: client registers; server sends matching messages without further requests.
Server‑Class Hardware – machines built for reliability, higher CPU/memory, redundant components, often headless (no monitor/keyboard).
Server Farm / Cluster – many simple servers working together to exceed the capability of a single box.
Network Appliance – specialized, small‑form‑factor server (router, firewall, IDS).
Dominant Server OS – Linux/FreeBSD (UNIX‑like) and Windows Server.
Peer‑to‑Peer (P2P) – each node can act as both client and server; no dedicated central server.
---
📌 Must Remember
A server can be just a software process; the physical machine is a metonymic use of the term.
Request‑Response = pull; Publish‑Subscribe = push.
Server‑Class hardware = more processing power, memory, fault tolerance, often no GUI.
Redundancy (dual power, RAID, ECC memory) = hallmark of mission‑critical enterprise servers.
Internet backbone relies on many server types (DNS root servers, web servers, etc.).
P2P is the notable exception to the client‑server paradigm.
---
🔄 Key Processes
Typical Request‑Response Cycle
Client formulates request → sends to server → server processes → server sends response → client receives result.
Publish‑Subscribe Registration
Client subscribes to topic → server records subscription → when matching event occurs, server pushes message to client.
Setting Up a Server Farm
Deploy multiple identical servers → configure load balancer → enable health checks → add redundancy (e.g., RAID, dual power).
---
🔍 Key Comparisons
Server vs. Service
Server: program/hardware that hosts a service.
Service: the functionality offered (e.g., file sharing).
Request–Response vs. Publish–Subscribe
Request–Response: client initiates every interaction.
Publish–Subscribe: server initiates delivery after client’s subscription.
General‑Purpose Computer vs. Server‑Class Hardware
General‑Purpose: may run a server process but lacks built‑in redundancy, headless design.
Server‑Class: engineered for uptime, often headless, redundant components.
Peer‑to‑Peer vs. Client‑Server
P2P: each node can be client and server, no central authority.
Client‑Server: distinct roles; central server provides resources.
---
⚠️ Common Misunderstandings
“A server is only a hardware box.” – It’s primarily a program; hardware is just the platform.
“All servers use the request‑response model.” – Publish‑subscribe is a common alternative.
“Any computer can replace a server without changes.” – Server‑class hardware adds reliability (redundancy, ECC memory) that typical PCs lack.
“P2P never uses servers.” – Hybrid systems often combine P2P with central servers (e.g., tracker servers).
---
🧠 Mental Models / Intuition
“Server = Service Host” – Think of a server as a restaurant: the kitchen (program) prepares dishes (services) for diners (clients).
“Pull vs. Push” – Request‑response = pulling a book off a shelf; publish‑subscribe = getting a book delivered when it arrives.
“Redundancy = Safety Net” – Dual power supplies, RAID, ECC memory act like backup parachutes for critical flights.
---
🚩 Exceptions & Edge Cases
Peer‑to‑Peer systems (file sharing, early Skype) bypass dedicated servers.
Small‑scale deployments may run a server process on a laptop or desktop (no special hardware needed).
Network appliances perform single, dedicated functions and may not run a full OS stack.
---
📍 When to Use Which
Choose Request‑Response when clients need on‑demand data or actions (e.g., web page loads).
Choose Publish‑Subscribe for event‑driven scenarios where many clients need updates (e.g., stock ticker, chat notifications).
Deploy Server‑Class hardware for mission‑critical, 24/7 services requiring high availability.
Use general‑purpose machines for development, testing, or low‑impact services.
Select a network appliance when you need a dedicated function (routing, firewall) without full server overhead.
---
👀 Patterns to Recognize
“Client → Server → Client” pattern → indicates request‑response.
“Subscribe → Event → Push” pattern → indicates publish‑subscribe.
Redundant components (dual PSU, RAID, ECC) → flag of enterprise‑grade server.
Headless configuration (no GUI) → typical of production server deployments.
---
🗂️ Exam Traps
Distractor: “All servers must have a graphical user interface.” – Wrong; many run headless.
Distractor: “Peer‑to‑peer is a type of client‑server model.” – Incorrect; roles are merged.
Distractor: “Publish‑subscribe requires the client to poll the server.” – Misleading; the client receives pushes after subscription.
Distractor: “Any computer running a service is automatically a ‘server‑class’ machine.” – False; server‑class implies specific hardware features.
---
or
Or, immediately create your own study flashcards:
Upload a PDF.
Master Study Materials.
Master Study Materials.
Start learning in seconds
Drop your PDFs here or
or