A server is a computer program that provides a service to another computer programs (and its user). In a data center, the physical computer that a server program runs in is also frequently referred to as a server. That machine may be a dedicated server or it may be used for other purposes as well.
In the client/server programming model, a server program awaits and fulfills requests from client programs, which may be running in the same or other computers. A given application in a computer may function as a client with requests for services from other programs and also as a server of requests from other programs.
Types of servers
Servers are often categorized in terms of their purpose. A Web server, for example, is a computer program that serves requested HTML pages or files. The program that is requesting web content is called a client. For example, aWeb browser is a client that requests HTML files from Web servers.
Here are a few other types of servers, among a great number of other possibilities:
A proxy server is software that acts as an intermediary between an endpoint device, such as a computer, and another server from which a user or client is requesting a service.
A virtual server is a program running on a shared server that is configured in such a way that it seems to each user that they have complete control of a server.
Choosing the right server
There are many factors to consider in the midst of a server selection, including virtual machine (VM) and container consolidation. When choosing a server, it is important to evaluate the importance of certain features based on the use cases. Security capabilities are also important and there will probably be a number of protection, detection and recovery features to consider, including native data encryption to protect data in flight and data at rest, as well as persistent event logging to provide an indelible record of all activity. If the server will rely on internal storage, the choice of disk types and capacity is also important because it can have a significant influence on input/output (I/O) and resilience.
Many organizations are shrinking the number of physical servers in their data centers as virtualization allows fewer servers to host more workloads. The advent of cloud computing has also changed the number of servers an organization needs to host on premises. Packing more capability into fewer boxes can reduce overall capital expenses, data center floor space and power and cooling demands. Hosting more workloads on fewer boxes, however, can also pose an increased risk to the business because more workloads will be affected if the server fails or needs to be offline for routine maintenance.
A server maintenance checklist should cover physical elements as well as the system's critical configuration. Download a PDF of this server maintenance checklist.