What is client-server architecture?

Definition

In a client-server design, the server owns durable sessions and process state while one or more clients provide the user interface. A client can disconnect or restart without necessarily terminating work that remains on the server.

Moving the server to another machine enables remote operation but adds authentication, compatibility and network-failure concerns. Protocol versions need explicit handling so an older client cannot silently misinterpret server behavior.

ELI5

Client-server architecture separates the service that owns data or long-running work from the apps that people use to control and view it. The server does the shared work, while clients send requests and display results.

For example, an agent task can keep running on a server after a laptop client closes and reconnect later to show progress. Remote connections need authentication and compatible protocol versions so another client cannot access the task or misunderstand the server's response.

Why use client-server architecture for terminal sessions?

The server can keep processes and state alive independently while clients connect, disconnect or run on different machines.

What risks appear in remote client-server mode?

Remote mode adds network failures, authentication, encryption and protocol-version compatibility requirements.

  1. The words Mission Control for AI Agents beside a simple agent coordination graphic
Definition card for client-server architecture: What is client-server architecture?

Client-server architecture separates a service that owns data or long-running work from clients that connect to request operations and display results.