Client-server architecture

The client-server architecture is a common software [design pattern] that divides an application into two separate parts:

  • Clients: The clients are typically the user-facing parts of the system, such as websites, mobile apps, or desktop applications. Clients send requests to the servers and display the results to the user.

  • Servers: The servers process client requests, manage resources like databases, and send the required data back to the clients.