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:
- An application server is a program in a computer in a distributed network that provides the business logic for an application program.
- 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 mail server is an application that receives incoming e-mail from local users (people within the same domain) and remote senders and forwards outgoing e-mail for delivery.
- 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.
- A blade server is a server chassis housing multiple thin, modular electronic circuit boards, known as server blades. Each blade is a server in its own right, often dedicated to a single application.
- A file server is a computer responsible for the central storage and management of data files so that other computers on the same network can access them.
- A policy server is a security component of a policy-based network that provides authorization services and facilitates tracking and control of files.
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.