The client–server model of computing is a segregated application structure that divides tasks or workloads between the service providers or clients.
Usually, clients and servers communicate over a computer network on separate hardware, but there is a certain possibility that both client and server may reside in the same system. A server host runs multiple server programs that work on shared resources with clients. A client does not share any of its resources, but requests for a specific server's content or service function